public void OnChat(ServerChatEventArgs e) { var Start = DateTime.Now; var msg = e.Buffer; var ply = e.Who; var tsplr = TShock.Players[e.Who]; var text = e.Text; if (e.Handled) { return; } if (text.StartsWith("/grow")) { if (!tsplr.Group.HasPermission(Permissions.grow)) { return; } var I = Houses.Count; for (int i = 0; i < I; i++) { if (!HTools.OwnsHouse(tsplr.User, Houses[i]) && Houses[i].HouseArea.Intersects(new Rectangle(tsplr.TileX, tsplr.TileY, 1, 1))) { e.Handled = true; tsplr.SendErrorMessage("You can't build here!"); return; } } return; } if (HConfig.HouseChatEnabled) { if (text[0] == '/') { return; } var I = HousingDistricts.Houses.Count; for (int i = 0; i < I; i++) { if (Timeout(Start)) { return; } House house; try { house = HousingDistricts.Houses[i]; } catch { continue; } if (house.ChatEnabled == 1 && house.HouseArea.Intersects(new Rectangle(tsplr.TileX, tsplr.TileY, 1, 1))) { HTools.BroadcastToHouse(house, text, tsplr.Name); e.Handled = true; } } } }
public void OnChat(messageBuffer msg, int ply, string text, HandledEventArgs e) { if (text[0] == '/') { return; } var tsplr = TShock.Players[msg.whoAmI]; foreach (House house in HousingDistricts.Houses) { if (house.HouseArea.Intersects(new Rectangle(tsplr.TileX, tsplr.TileY, 1, 1)) && house.WorldID == Main.worldID.ToString()) { HTools.BroadcastToHouse(house.ID, text, tsplr.Name); e.Handled = true; } } }