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

◆ CheckUnderwaterPlant()

static void Terraria.WorldGen.CheckUnderwaterPlant ( ushort type,
int x,
int y )
inlinestatic

Definition at line 49509 of file WorldGen.cs.

49510 {
49512 {
49513 KillTile(x, y);
49514 if (Main.netMode == 2)
49515 {
49516 NetMessage.SendData(17, -1, -1, null, 0, x, y);
49517 }
49518 SquareTileFrame(x, y);
49519 return;
49520 }
49521 Tile tileSafely = Framing.GetTileSafely(x, y - 1);
49522 Tile tileSafely2 = Framing.GetTileSafely(x, y);
49523 Tile tileSafely3 = Framing.GetTileSafely(x, y + 1);
49524 bool num = tileSafely.active() && tileSafely.type == type;
49525 bool flag = tileSafely3.active() && tileSafely3.type == type;
49526 int num2 = tileSafely2.frameX / 18;
49527 tileSafely2.frameY = 0;
49528 if (num)
49529 {
49530 if (1 > num2 || num2 > 7)
49531 {
49532 tileSafely2.frameX = (short)(genRand.Next(1, 8) * 18);
49533 if (Main.netMode == 2)
49534 {
49535 NetMessage.SendTileSquare(-1, x, y);
49536 }
49537 }
49538 }
49539 else if (flag)
49540 {
49541 if (7 > num2 || num2 > 12)
49542 {
49543 tileSafely2.frameX = (short)(genRand.Next(7, 13) * 18);
49544 if (Main.netMode == 2)
49545 {
49546 NetMessage.SendTileSquare(-1, x, y);
49547 }
49548 }
49549 }
49550 else if (num2 != 0)
49551 {
49552 tileSafely2.frameX = 0;
49553 if (Main.netMode == 2)
49554 {
49555 NetMessage.SendTileSquare(-1, x, y);
49556 }
49557 }
49558 }
static void KillTile(int i, int j, bool fail=false, bool effectOnly=false, bool noItem=false)
static UnifiedRandom genRand
Definition WorldGen.cs:1215
static bool CanUnderwaterPlantGrowHere(ushort type, int x, int y, bool ignoreSelf)
static void SquareTileFrame(int i, int j, bool resetFrame=true)

References Terraria.Framing.GetTileSafely(), Terraria.Main.netMode, Terraria.NetMessage.SendData(), Terraria.NetMessage.SendTileSquare(), and System.type.