Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ToggleChandelier()

static void Terraria.Wiring.ToggleChandelier ( int i,
int j,
Tile tileCache,
bool? forcedStateWhereTrueIsOn,
bool doSkipWires )
inlinestatic

Definition at line 2647 of file Wiring.cs.

2648 {
2649 int num;
2650 for (num = tileCache.frameY / 18; num >= 3; num -= 3)
2651 {
2652 }
2653 int num2 = j - num;
2654 int num3 = tileCache.frameX % 108 / 18;
2655 if (num3 > 2)
2656 {
2657 num3 -= 3;
2658 }
2659 num3 = i - num3;
2660 short num4 = 54;
2661 if (Main.tile[num3, num2].frameX % 108 > 0)
2662 {
2663 num4 = -54;
2664 }
2665 bool flag = Main.tile[num3, num2].frameX % 108 > 0;
2666 if (forcedStateWhereTrueIsOn.HasValue && !forcedStateWhereTrueIsOn.Value == flag)
2667 {
2668 return;
2669 }
2670 for (int k = num3; k < num3 + 3; k++)
2671 {
2672 for (int l = num2; l < num2 + 3; l++)
2673 {
2674 Main.tile[k, l].frameX += num4;
2675 if (doSkipWires)
2676 {
2677 SkipWire(k, l);
2678 }
2679 }
2680 }
2681 NetMessage.SendTileSquare(-1, num3 + 1, num2 + 1, 3);
2682 }
static void SkipWire(int x, int y)
Definition Wiring.cs:105

References Terraria.Tile.frameY, Terraria.NetMessage.SendTileSquare(), and Terraria.Main.tile.

Referenced by Terraria.Wiring.HitWireSingle(), and Terraria.WorldGen.TryToggleLight().