52 lines
1.8 KiB
C#
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)));
|
|
}
|
|
}
|
|
}
|
|
}
|