public static void HoneyCheck(int x, int y) { Tile tile = Main.tile[x - 1, y]; Tile tile2 = Main.tile[x + 1, y]; Tile tile3 = Main.tile[x, y - 1]; Tile tile4 = Main.tile[x, y + 1]; Tile tile5 = Main.tile[x, y]; if ((tile.liquid > 0 && tile.liquidType() == 0) || (tile2.liquid > 0 && tile2.liquidType() == 0) || (tile3.liquid > 0 && tile3.liquidType() == 0)) { int num = 0; if (tile.liquidType() == 0) { num += tile.liquid; tile.liquid = 0; } if (tile2.liquidType() == 0) { num += tile2.liquid; tile2.liquid = 0; } if (tile3.liquidType() == 0) { num += tile3.liquid; tile3.liquid = 0; } if (num < 32) { return; } if (tile5.active() && Main.tileObsidianKill[tile5.type]) { WorldGen.KillTile(x, y); if (Main.netMode == 2) { NetMessage.SendData(17, -1, -1, "", 0, x, y); } } if (!tile5.active()) { tile5.liquid = 0; tile5.liquidType(0); WorldGen.PlaceTile(x, y, 229, true, true); WorldGen.SquareTileFrame(x, y); if (Main.netMode == 2) { NetMessage.SendTileSquare(-1, x - 1, y - 1, 3); } } } else { if (tile4.liquid <= 0 || tile4.liquidType() != 0) { return; } if (Main.tileCut[tile4.type]) { WorldGen.KillTile(x, y + 1); if (Main.netMode == 2) { NetMessage.SendData(17, -1, -1, "", 0, x, y + 1); } } else if (tile4.active() && Main.tileObsidianKill[tile4.type]) { WorldGen.KillTile(x, y + 1); if (Main.netMode == 2) { NetMessage.SendData(17, -1, -1, "", 0, x, y + 1); } } if (tile4.active()) { return; } if (tile5.liquid < 32) { tile5.liquid = 0; tile5.liquidType(0); if (Main.netMode == 2) { NetMessage.SendTileSquare(-1, x - 1, y, 3); } return; } tile5.liquid = 0; tile5.liquidType(0); tile4.liquid = 0; tile4.liquidType(0); WorldGen.PlaceTile(x, y + 1, 229, true, true); WorldGen.SquareTileFrame(x, y + 1); if (Main.netMode == 2) { NetMessage.SendTileSquare(-1, x - 1, y, 3); } } }
public static void LavaCheck(int x, int y) { Tile tile = Main.tile[x - 1, y]; Tile tile2 = Main.tile[x + 1, y]; Tile tile3 = Main.tile[x, y - 1]; Tile tile4 = Main.tile[x, y + 1]; Tile tile5 = Main.tile[x, y]; if ((tile.liquid > 0 && !tile.lava()) || (tile2.liquid > 0 && !tile2.lava()) || (tile3.liquid > 0 && !tile3.lava())) { int num = 0; int type = 56; if (!tile.lava()) { num += tile.liquid; tile.liquid = 0; } if (!tile2.lava()) { num += tile2.liquid; tile2.liquid = 0; } if (!tile3.lava()) { num += tile3.liquid; tile3.liquid = 0; } if (tile.honey() || tile2.honey() || tile3.honey()) { type = 230; } if (num < 24) { return; } if (tile5.active() && Main.tileObsidianKill[tile5.type]) { WorldGen.KillTile(x, y); if (Main.netMode == 2) { NetMessage.SendData(17, -1, -1, "", 0, x, y); } } if (!tile5.active()) { tile5.liquid = 0; tile5.lava(false); WorldGen.PlaceTile(x, y, type, true, true); WorldGen.SquareTileFrame(x, y); if (Main.netMode == 2) { NetMessage.SendTileSquare(-1, x - 1, y - 1, 3); } } } else { if (tile4.liquid <= 0 || tile4.lava()) { return; } if (Main.tileCut[tile4.type]) { WorldGen.KillTile(x, y + 1); if (Main.netMode == 2) { NetMessage.SendData(17, -1, -1, "", 0, x, y + 1); } } else if (tile4.active() && Main.tileObsidianKill[tile4.type]) { WorldGen.KillTile(x, y + 1); if (Main.netMode == 2) { NetMessage.SendData(17, -1, -1, "", 0, x, y + 1); } } if (tile4.active()) { return; } if (tile5.liquid < 24) { tile5.liquid = 0; tile5.liquidType(0); if (Main.netMode == 2) { NetMessage.SendTileSquare(-1, x - 1, y, 3); } return; } int type2 = 56; if (tile4.honey()) { type2 = 230; } tile5.liquid = 0; tile5.lava(false); tile4.liquid = 0; WorldGen.PlaceTile(x, y + 1, type2, true, true); WorldGen.SquareTileFrame(x, y + 1); if (Main.netMode == 2) { NetMessage.SendTileSquare(-1, x - 1, y, 3); } } }
public static bool SpreadDirt(int x, int y) { if ((double)Vector2.Distance(DelegateMethods.v2_1, new Vector2((float)x, (float)y)) > (double)DelegateMethods.f_1 || !WorldGen.PlaceTile(x, y, 0, false, false, -1, 0)) { return(false); } if (Main.netMode != 0) { NetMessage.SendData(17, -1, -1, (NetworkText)null, 1, (float)x, (float)y, 0.0f, 0, 0, 0); } Vector2 Position = new Vector2((float)(x * 16), (float)(y * 16)); int Type = 0; for (int index = 0; index < 3; ++index) { Dust dust1 = Dust.NewDustDirect(Position, 16, 16, Type, 0.0f, 0.0f, 100, Color.Transparent, 2.2f); dust1.noGravity = true; dust1.velocity.Y -= 1.2f; dust1.velocity *= 4f; Dust dust2 = Dust.NewDustDirect(Position, 16, 16, Type, 0.0f, 0.0f, 100, Color.Transparent, 1.3f); dust2.velocity.Y -= 1.2f; dust2.velocity *= 2f; } int i = x; int j1 = y + 1; if (Main.tile[i, j1] != null && !TileID.Sets.Platforms[(int)Main.tile[i, j1].type] && (Main.tile[i, j1].topSlope() || Main.tile[i, j1].halfBrick())) { WorldGen.SlopeTile(i, j1, 0, false); if (Main.netMode != 0) { NetMessage.SendData(17, -1, -1, (NetworkText)null, 14, (float)i, (float)j1, 0.0f, 0, 0, 0); } } int j2 = y - 1; if (Main.tile[i, j2] != null && !TileID.Sets.Platforms[(int)Main.tile[i, j2].type] && Main.tile[i, j2].bottomSlope()) { WorldGen.SlopeTile(i, j2, 0, false); if (Main.netMode != 0) { NetMessage.SendData(17, -1, -1, (NetworkText)null, 14, (float)i, (float)j2, 0.0f, 0, 0, 0); } } return(true); }