1.0.4.0 Source
This commit is contained in:
commit
ff3d24ee9d
35 changed files with 101417 additions and 0 deletions
75
Sign.cs
Normal file
75
Sign.cs
Normal file
|
@ -0,0 +1,75 @@
|
|||
// Decompiled with JetBrains decompiler
|
||||
// Type: Terraria.Sign
|
||||
// Assembly: Terraria, Version=1.0.4.0, Culture=neutral, PublicKeyToken=null
|
||||
// MVID: FF258283-FE37-4E8A-A035-CB1E6DC74C3C
|
||||
// Assembly location: C:\Users\mikeyisbaeyt\Downloads\depotdownloader-2.4.5\depots\105601\6707058\Terraria.exe
|
||||
|
||||
namespace Terraria
|
||||
{
|
||||
public class Sign
|
||||
{
|
||||
public const int maxSigns = 1000;
|
||||
public int x;
|
||||
public int y;
|
||||
public string text;
|
||||
|
||||
public object Clone() => this.MemberwiseClone();
|
||||
|
||||
public static void KillSign(int x, int y)
|
||||
{
|
||||
for (int index = 0; index < 1000; ++index)
|
||||
{
|
||||
if (Main.sign[index] != null && Main.sign[index].x == x && Main.sign[index].y == y)
|
||||
Main.sign[index] = (Sign) null;
|
||||
}
|
||||
}
|
||||
|
||||
public static int ReadSign(int i, int j)
|
||||
{
|
||||
int num1 = (int) Main.tile[i, j].frameX / 18;
|
||||
int num2 = (int) Main.tile[i, j].frameY / 18;
|
||||
while (num1 > 1)
|
||||
num1 -= 2;
|
||||
int x = i - num1;
|
||||
int y = j - num2;
|
||||
if (Main.tile[x, y].type != (byte) 55 && Main.tile[x, y].type != (byte) 85)
|
||||
{
|
||||
Sign.KillSign(x, y);
|
||||
return -1;
|
||||
}
|
||||
int num3 = -1;
|
||||
for (int index = 0; index < 1000; ++index)
|
||||
{
|
||||
if (Main.sign[index] != null && Main.sign[index].x == x && Main.sign[index].y == y)
|
||||
{
|
||||
num3 = index;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (num3 < 0)
|
||||
{
|
||||
for (int index = 0; index < 1000; ++index)
|
||||
{
|
||||
if (Main.sign[index] == null)
|
||||
{
|
||||
num3 = index;
|
||||
Main.sign[index] = new Sign();
|
||||
Main.sign[index].x = x;
|
||||
Main.sign[index].y = y;
|
||||
Main.sign[index].text = "";
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return num3;
|
||||
}
|
||||
|
||||
public static void TextSign(int i, string text)
|
||||
{
|
||||
if (Main.tile[Main.sign[i].x, Main.sign[i].y] == null || !Main.tile[Main.sign[i].x, Main.sign[i].y].active || Main.tile[Main.sign[i].x, Main.sign[i].y].type != (byte) 55 && Main.tile[Main.sign[i].x, Main.sign[i].y].type != (byte) 85)
|
||||
Main.sign[i] = (Sign) null;
|
||||
else
|
||||
Main.sign[i].text = text;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue