Definition at line 947 of file Wiring.cs.
948 {
950 for (
int i = 0; i <
next.Count; i++)
951 {
955 next.PushBack(point);
957 }
959 while (
next.Count > 0)
960 {
966 {
968 }
969 for (
int j = 0;
j < 4;
j++)
970 {
974 {
975 case 0:
978 break;
979 case 1:
982 break;
983 case 2:
986 break;
987 case 3:
990 break;
991 default:
994 break;
995 }
997 {
998 continue;
999 }
1001 if (tile == null)
1002 {
1003 continue;
1004 }
1007 {
1008 continue;
1009 }
1011 if (tile.type == 424 || tile.type == 445)
1012 {
1014 }
1015 if (
tile2.type == 424)
1016 {
1017 switch (
tile2.frameX / 18)
1018 {
1019 case 0:
1021 {
1022 continue;
1023 }
1024 break;
1025 case 1:
1026 if ((
num != 0 ||
j != 3) && (
num != 3 ||
j != 0) && (
num != 1 ||
j != 2) && (
num != 2 ||
j != 1))
1027 {
1028 continue;
1029 }
1030 break;
1031 case 2:
1032 if ((
num != 0 ||
j != 2) && (
num != 2 ||
j != 0) && (
num != 1 ||
j != 3) && (
num != 3 ||
j != 1))
1033 {
1034 continue;
1035 }
1036 break;
1037 }
1038 }
1039 if (
tile2.type == 445)
1040 {
1042 {
1043 continue;
1044 }
1046 {
1048 }
1049 else
1050 {
1052 }
1053 }
1055 {
1056 1 => tile.wire() ? 1 : 0,
1057 2 => tile.wire2() ? 1 : 0,
1058 3 => tile.wire3() ? 1 : 0,
1059 4 => tile.wire4() ? 1 : 0,
1061 } == 0)
1062 {
1063 continue;
1064 }
1067 {
1068 value--;
1069 if (value == 0)
1070 {
1072 }
1073 else
1074 {
1076 }
1077 continue;
1078 }
1082 {
1084 }
1085 }
1086 }
1089 }
static DoubleStack< byte > _wireDirectionList
static Dictionary< Point16, bool > _wireSkip
static Dictionary< Point16, byte > _PixelBoxTriggers
static void SkipWire(int x, int y)
Use to prevent wire signals from running for the provided coordinates. Typically used in multi-tiles ...
static Dictionary< Point16, byte > _toProcess
static int _currentWireColor
static void HitWireSingle(int i, int j)
References Terraria.Wiring._currentWireColor, Terraria.Wiring._PixelBoxTriggers, Terraria.Wiring._toProcess, Terraria.Wiring._wireDirectionList, Terraria.Wiring._wireSkip, Terraria.Wiring.HitWireSingle(), Terraria.Main.maxTilesX, Terraria.Main.maxTilesY, Terraria.Wiring.SkipWire(), Terraria.Main.tile, Terraria.Tile.type, Terraria.Tile.wire(), Terraria.Tile.wire2(), Terraria.Tile.wire3(), Terraria.Tile.wire4(), Terraria.DataStructures.Point16.X, and Terraria.DataStructures.Point16.Y.
Referenced by Terraria.Wiring.TripWire().