Added paddings. Added rename to vars. Deleted unused constructor

This commit is contained in:
Absolutely disgusting
2026-03-07 22:43:08 +04:00
parent 2497ba16bc
commit 59ab0dd893
3 changed files with 72 additions and 53 deletions

View File

@@ -9,7 +9,8 @@ namespace _2DGAMELIB
private double unitS; private double unitS;
public AreM(double Unit, double XRatio, double YRatio, double Size, double DisMag, double HitMag, double Strength) public AreM(double Unit, double XRatio, double YRatio, double Size, double DisMag, double HitMag, double Strength) :
base(Unit, XRatio, YRatio, Size, DisMag, HitMag)
{ {
SetXYRatio(XRatio, YRatio); SetXYRatio(XRatio, YRatio);
base.Size = Size; base.Size = Size;
@@ -20,20 +21,20 @@ namespace _2DGAMELIB
unitS = displayUnitScale * num; unitS = displayUnitScale * num;
WH.Width = (int)(base.LocalWidth * Unit); displayOutputSize.Width = (int)(base.LocalWidth * Unit);
WH.Height = (int)(base.LocalHeight * Unit); displayOutputSize.Height = (int)(base.LocalHeight * Unit);
WHA.Width = (int)(base.LocalWidth * displayUnitScale); displayBufferSize.Width = (int)(base.LocalWidth * displayUnitScale);
WHA.Height = (int)(base.LocalHeight * displayUnitScale); displayBufferSize.Height = (int)(base.LocalHeight * displayUnitScale);
DisplayLayer = new Bitmap((int)((double)WH.Width * DisMag * num), (int)((double)WH.Height * DisMag * num)); DisplayLayer = new Bitmap((int)((double)displayOutputSize.Width * DisMag * num), (int)((double)displayOutputSize.Height * DisMag * num));
displayGraphics = Graphics.FromImage(DisplayLayer); displayGraphics = Graphics.FromImage(DisplayLayer);
displayGraphics.SmoothingMode = SmoothingMode.None; displayGraphics.SmoothingMode = SmoothingMode.None;
displayGraphics.PixelOffsetMode = PixelOffsetMode.None; displayGraphics.PixelOffsetMode = PixelOffsetMode.None;
hitUnitScale = Unit * HitMag; hitUnitScale = Unit * HitMag;
WHH.Width = (int)(base.LocalWidth * hitUnitScale); hitBufferSize.Width = (int)(base.LocalWidth * hitUnitScale);
WHH.Height = (int)(base.LocalHeight * hitUnitScale); hitBufferSize.Height = (int)(base.LocalHeight * hitUnitScale);
HitLayer = new Bitmap(WHH.Width, WHH.Height); HitLayer = new Bitmap(hitBufferSize.Width, hitBufferSize.Height);
hitGraphics = Graphics.FromImage(HitLayer); hitGraphics = Graphics.FromImage(HitLayer);
hitGraphics.SmoothingMode = SmoothingMode.None; hitGraphics.SmoothingMode = SmoothingMode.None;
hitGraphics.PixelOffsetMode = PixelOffsetMode.None; hitGraphics.PixelOffsetMode = PixelOffsetMode.None;

View File

@@ -155,12 +155,29 @@ namespace _2DGAMELIB
public new void SetDefault() public new void SetDefault()
{ {
base.SetDefault(); base.SetDefault();
font = new Font("", 1f);
brusht = new SolidBrush(Color.Black); if (font != null)
brushs = null; font.Dispose();
stringformat = new StringFormat();
} if (brusht != null)
brusht.Dispose();
if (brushs != null)
brushs.Dispose();
if (stringformat != null)
stringformat.Dispose();
font = new Font("", 1f);
brusht = new SolidBrush(Color.Black);
brushs = null;
stringformat = new StringFormat();
EditF = true;
EditT = true;
EditTS = true;
}
public ParT() public ParT()
{ {
@@ -174,23 +191,21 @@ namespace _2DGAMELIB
private void CopyT(ParT ParT) private void CopyT(ParT ParT)
{ {
Copy(ParT); Copy(ParT);
fontSize = ParT.fontSize; fontSize = ParT.fontSize;
if (ParT.font != null) if (ParT.font != null)
{
Font = ParT.font.Copy(); Font = ParT.font.Copy();
}
if (ParT.brusht != null) if (ParT.brusht != null)
{
TextBrush = ParT.brusht.Copy(); TextBrush = ParT.brusht.Copy();
}
if (ParT.brushs != null) if (ParT.brushs != null)
{
ShadBrush = ParT.brushs.Copy(); ShadBrush = ParT.brushs.Copy();
}
if (ParT.stringformat != null) if (ParT.stringformat != null)
{
StringFormat = ParT.stringformat.Copy(); StringFormat = ParT.stringformat.Copy();
}
positionT = ParT.positionT; positionT = ParT.positionT;
rectSize = ParT.rectSize; rectSize = ParT.rectSize;
Text = ParT.Text; Text = ParT.Text;
@@ -199,13 +214,11 @@ namespace _2DGAMELIB
public new void Draw(double Unit, Graphics Graphics) public new void Draw(double Unit, Graphics Graphics)
{ {
if (Edit) if (Edit)
{
EditT = true; EditT = true;
}
if (EditS || EditPS) if (EditS || EditPS)
{
EditTS = true; EditTS = true;
}
base.Draw(Unit, Graphics); base.Draw(Unit, Graphics);
DrawString(Unit, Graphics); DrawString(Unit, Graphics);
} }
@@ -215,18 +228,23 @@ namespace _2DGAMELIB
us = Unit * base.Size; us = Unit * base.Size;
usx = us * base.SizeX; usx = us * base.SizeX;
usy = us * base.SizeY; usy = us * base.SizeY;
bp = base.BasePoint; bp = base.BasePoint;
bp.X *= usx; bp.X *= usx;
bp.Y *= usy; bp.Y *= usy;
a0 = base.Angle; a0 = base.Angle;
a1 = System.Math.PI * a0 / 180.0; a1 = System.Math.PI * a0 / 180.0;
M11 = System.Math.Cos(a1); M11 = System.Math.Cos(a1);
M12 = System.Math.Sin(a1); M12 = System.Math.Sin(a1);
v.X = bp.X * M11 + bp.Y * (0.0 - M12); v.X = bp.X * M11 + bp.Y * (0.0 - M12);
v.Y = bp.X * M12 + bp.Y * M11; v.Y = bp.X * M12 + bp.Y * M11;
p = base.Position; p = base.Position;
bp.X = p.X * Unit - v.X; bp.X = p.X * Unit - v.X;
bp.Y = p.Y * Unit - v.Y; bp.Y = p.Y * Unit - v.Y;
rect.X = (float)(positionT.X * us); rect.X = (float)(positionT.X * us);
rect.Y = (float)(positionT.Y * us); rect.Y = (float)(positionT.Y * us);
rect.Width = (float)(rectSize.X * us); rect.Width = (float)(rectSize.X * us);
@@ -261,12 +279,14 @@ namespace _2DGAMELIB
Calculation(Unit); Calculation(Unit);
EditT = false; EditT = false;
} }
if (EditF || EditTS) if (EditF || EditTS)
{ {
RebuildFont((float)(us * fontSize)); RebuildFont((float)(us * fontSize));
EditF = false; EditF = false;
EditTS = false; EditTS = false;
} }
af = (float)a0; af = (float)a0;
xf = (float)base.SizeX; xf = (float)base.SizeX;
yf = (float)base.SizeY; yf = (float)base.SizeY;
@@ -345,17 +365,18 @@ namespace _2DGAMELIB
public void SetStringRectOutline(double Unit, Graphics Graphics) public void SetStringRectOutline(double Unit, Graphics Graphics)
{ {
Vector2D[] stringRectPoints = GetStringRectPoints(Unit, Graphics); Vector2D[] stringRectPoints = GetStringRectPoints(Unit, Graphics);
Out @out = new Out
{ Out @out = new Out { Tension = 0f };
Tension = 0f
};
Vector2D vector2D = Dat.Vec2DZero - stringRectPoints[0]; Vector2D vector2D = Dat.Vec2DZero - stringRectPoints[0];
double x = 0.05; double x = 0.05;
double num = 0.025; double num = 0.025;
@out.ps.Add(stringRectPoints[0].AddY(0.0 - num) + vector2D);
@out.ps.Add(stringRectPoints[1].AddXY(x, 0.0 - num) + vector2D); @out.ps.Add(stringRectPoints[0].AddY(-num) + vector2D);
@out.ps.Add(stringRectPoints[1].AddXY(x, -num) + vector2D);
@out.ps.Add(stringRectPoints[2].AddXY(x, num) + vector2D); @out.ps.Add(stringRectPoints[2].AddXY(x, num) + vector2D);
@out.ps.Add(stringRectPoints[3].AddY(num) + vector2D); @out.ps.Add(stringRectPoints[3].AddY(num) + vector2D);
base.OP.Add(@out); base.OP.Add(@out);
} }
public new void Dispose() public new void Dispose()

View File

@@ -19,11 +19,9 @@ namespace _2DGAMELIB
protected double displayUnitScale; protected double displayUnitScale;
protected double hitUnitScale; protected double hitUnitScale;
private int DrawCals = 0; protected Size displayOutputSize = System.Drawing.Size.Empty;
protected Size hitBufferSize = System.Drawing.Size.Empty;
protected Size WH = System.Drawing.Size.Empty; protected Size displayBufferSize = System.Drawing.Size.Empty;
protected Size WHH = System.Drawing.Size.Empty;
protected Size WHA = System.Drawing.Size.Empty;
public Vector2D BasePoint = Dat.Vec2DZero; public Vector2D BasePoint = Dat.Vec2DZero;
public Vector2D Position = Dat.Vec2DZero; public Vector2D Position = Dat.Vec2DZero;
@@ -34,7 +32,6 @@ namespace _2DGAMELIB
public double UnitScale => unitScale; public double UnitScale => unitScale;
public double DisplayUnitScale => displayUnitScale; public double DisplayUnitScale => displayUnitScale;
public RenderArea() { }
public RenderArea(double Unit, double XRatio, double YRatio, double Size, double DisMag, double HitMag) public RenderArea(double Unit, double XRatio, double YRatio, double Size, double DisMag, double HitMag)
{ {
Setting(Unit, XRatio, YRatio, Size, DisMag, HitMag); Setting(Unit, XRatio, YRatio, Size, DisMag, HitMag);
@@ -58,11 +55,11 @@ namespace _2DGAMELIB
base.Size = Size; base.Size = Size;
unitScale = Unit; unitScale = Unit;
displayUnitScale = Unit * DisMag; displayUnitScale = Unit * DisMag;
WH.Width = (int)(base.LocalWidth * Unit); displayOutputSize.Width = (int)(base.LocalWidth * Unit);
WH.Height = (int)(base.LocalHeight * Unit); displayOutputSize.Height = (int)(base.LocalHeight * Unit);
WHA.Width = (int)(base.LocalWidth * displayUnitScale); displayBufferSize.Width = (int)(base.LocalWidth * displayUnitScale);
WHA.Height = (int)(base.LocalHeight * displayUnitScale); displayBufferSize.Height = (int)(base.LocalHeight * displayUnitScale);
DisplayLayer = new Bitmap((int)((double)WH.Width * DisMag), (int)((double)WH.Height * DisMag)); DisplayLayer = new Bitmap((int)((double)displayOutputSize.Width * DisMag), (int)((double)displayOutputSize.Height * DisMag));
displayGraphics = Graphics.FromImage(DisplayLayer); displayGraphics = Graphics.FromImage(DisplayLayer);
@@ -78,9 +75,9 @@ namespace _2DGAMELIB
Setting(Unit, XRatio, YRatio, Size, DisMag); Setting(Unit, XRatio, YRatio, Size, DisMag);
hitUnitScale = Unit * HitMag; hitUnitScale = Unit * HitMag;
WHH.Width = (int)(base.LocalWidth * hitUnitScale); hitBufferSize.Width = (int)(base.LocalWidth * hitUnitScale);
WHH.Height = (int)(base.LocalHeight * hitUnitScale); hitBufferSize.Height = (int)(base.LocalHeight * hitUnitScale);
HitLayer = new Bitmap(WHH.Width, WHH.Height); HitLayer = new Bitmap(hitBufferSize.Width, hitBufferSize.Height);
hitGraphics = Graphics.FromImage(HitLayer); hitGraphics = Graphics.FromImage(HitLayer);
@@ -131,30 +128,30 @@ namespace _2DGAMELIB
int x = (int)(p.X * Are.displayUnitScale); int x = (int)(p.X * Are.displayUnitScale);
int y = (int)(p.Y * Are.displayUnitScale); int y = (int)(p.Y * Are.displayUnitScale);
if (Are.DisplayLayer.Width == Are.WHA.Width && Are.DisplayLayer.Height == Are.WHA.Height) if (Are.DisplayLayer.Width == Are.displayBufferSize.Width && Are.DisplayLayer.Height == Are.displayBufferSize.Height)
DisplayGraphics.DrawImageUnscaled(Are.DisplayLayer, x, y); DisplayGraphics.DrawImageUnscaled(Are.DisplayLayer, x, y);
else else
DisplayGraphics.DrawImage(Are.DisplayLayer, x, y, Are.WHA.Width, Are.WHA.Height); DisplayGraphics.DrawImage(Are.DisplayLayer, x, y, Are.displayBufferSize.Width, Are.displayBufferSize.Height);
if (Are.hitGraphics != null && HitGraphics != null) if (Are.hitGraphics != null && HitGraphics != null)
{ {
HitGraphics.DrawImage(Are.HitLayer, (int)(p.X * Are.hitUnitScale), (int)(p.Y * Are.hitUnitScale), Are.WHH.Width, Are.WHH.Height); HitGraphics.DrawImage(Are.HitLayer, (int)(p.X * Are.hitUnitScale), (int)(p.Y * Are.hitUnitScale), Are.hitBufferSize.Width, Are.hitBufferSize.Height);
} }
} }
public void DrawTo(Graphics GD) public void DrawTo(Graphics GD)
{ {
Vector2D p = GetPosition(); Vector2D p = GetPosition();
GD.DrawImage(DisplayLayer, (int)(p.X * unitScale), (int)(p.Y * unitScale), WH.Width, WH.Height); GD.DrawImage(DisplayLayer, (int)(p.X * unitScale), (int)(p.Y * unitScale), displayOutputSize.Width, displayOutputSize.Height);
} }
public void DrawTo(Graphics displayGraphics, Graphics hitGraphics) public void DrawTo(Graphics displayGraphics, Graphics hitGraphics)
{ {
Vector2D p = GetPosition(); Vector2D p = GetPosition();
displayGraphics.DrawImage(DisplayLayer, (int)(p.X * unitScale), (int)(p.Y * unitScale), WH.Width, WH.Height); displayGraphics.DrawImage(DisplayLayer, (int)(p.X * unitScale), (int)(p.Y * unitScale), displayOutputSize.Width, displayOutputSize.Height);
if (this.hitGraphics != null) if (this.hitGraphics != null)
{ {
hitGraphics.DrawImage(HitLayer, (int)(p.X * hitUnitScale), (int)(p.Y * hitUnitScale), WHH.Width, WHH.Height); hitGraphics.DrawImage(HitLayer, (int)(p.X * hitUnitScale), (int)(p.Y * hitUnitScale), hitBufferSize.Width, hitBufferSize.Height);
} }
} }