terraria-source-code/GameContent/RGB/DebugKeyboard.cs
2021-10-26 12:45:26 -04:00

52 lines
1.8 KiB
C#

// Decompiled with JetBrains decompiler
// Type: Terraria.GameContent.RGB.DebugKeyboard
// Assembly: Terraria, Version=1.4.0.5, Culture=neutral, PublicKeyToken=null
// MVID: 67F9E73E-0A81-4937-A22C-5515CD405A83
// Assembly location: C:\Users\mikeyisbaeyt\Downloads\depotdownloader-2.4.5\depots\105601\6707058\Terraria.exe
using Microsoft.Xna.Framework;
using ReLogic.Graphics;
using ReLogic.Peripherals.RGB;
namespace Terraria.GameContent.RGB
{
internal class DebugKeyboard : RgbDevice
{
private DebugKeyboard(Fragment fragment)
: base((RgbDeviceVendor) 4, (RgbDeviceType) 6, fragment, new DeviceColorProfile())
{
}
public static DebugKeyboard Create()
{
int num1 = 400;
int num2 = 100;
Point[] pointArray = new Point[num1 * num2];
for (int index1 = 0; index1 < num2; ++index1)
{
for (int index2 = 0; index2 < num1; ++index2)
pointArray[index1 * num1 + index2] = new Point(index2 / 10, index1 / 10);
}
Vector2[] vector2Array = new Vector2[num1 * num2];
for (int index3 = 0; index3 < num2; ++index3)
{
for (int index4 = 0; index4 < num1; ++index4)
vector2Array[index3 * num1 + index4] = new Vector2((float) index4 / (float) num2, (float) index3 / (float) num2);
}
return new DebugKeyboard(Fragment.FromCustom(pointArray, vector2Array));
}
public virtual void Present()
{
}
public virtual void DebugDraw(IDebugDrawer drawer, Vector2 position, float scale)
{
for (int index = 0; index < this.LedCount; ++index)
{
Vector2 ledCanvasPosition = this.GetLedCanvasPosition(index);
drawer.DrawSquare(new Vector4(ledCanvasPosition * scale + position, scale / 100f, scale / 100f), new Color(this.GetUnprocessedLedColor(index)));
}
}
}
}