void OnCubePlacement(CubePlaceEvent e) { if (LogCubes == false) { return; } string cubePosition = e.Position.x + "," + e.Position.y + "," + e.Position.z; string str = ""; var bp = CodeHatch.Blocks.Inventory.InventoryUtil.GetTilesetBlueprint(e.Material, (int)e.PrefabId); if (bp == null) { return; } Player Owner = Server.GetPlayerById(e.SenderId); if (Owner != null) { str += Owner.DisplayName + " has placed a " + bp.Name + ""; } else { str += "A " + bp.Name + " has been placed"; } str += " at [" + cubePosition + "]."; Log("Cubes", str); }
private static void BuildBlockOnThisSquare(int setX, int setY, int setZ, byte material, Quaternion rotation, byte prefabId) { var newPosition = new Vector3Int(setX, setY, setZ); var cubeEvent = new CubePlaceEvent(0, newPosition, material, rotation, prefabId, 0.0f); var localCubeEvent = new CubePlaceLocalEvent(cubeEvent, true); EventManager.CallEvent((BaseEvent)cubeEvent); EventManager.CallEvent((BaseEvent)localCubeEvent); }
void OnCubePlacement(CubePlaceEvent e) { if (e.PrefabId == null || e.SenderId == null || e.Material == null || e.Position == null) return; var bp = CodeHatch.Blocks.Inventory.InventoryUtil.GetTilesetBlueprint(e.Material, (int)e.PrefabId); if (bp == null) return; Player player = null; foreach (var ply in Server.ClientPlayers) { if (ply.Id == e.SenderId) { player = ply; } } if (player != null) Puts(player.DisplayName + " placed a " + bp.Name + " at " + e.Position.ToString()); }
private void OnCubePlacement(CubePlaceEvent placeEvent) { #region Check if (placeEvent == null) { return; } if (placeEvent.Cancelled) { return; } if (placeEvent.Material == 0) { return; } if (placeEvent.Entity == null) { return; } if (placeEvent.Entity.Owner == null) { return; } #endregion Player player = placeEvent.Entity.Owner; if (!player.HasPermission("admin")) { Zone currentZone = getPlayerZone(player); if (currentZone != null) { if (!currentZone.canBuild) { sendError(player, GetMessage("NoBuildHere")); placeEvent.Cancel(); } } } }
private void OnCubePlacement(CubePlaceEvent e) { HookCalled("OnCubePlacement"); var bp = CodeHatch.Blocks.Inventory.InventoryUtil.GetTilesetBlueprint(e.Material, e.PrefabId); if (bp == null) { return; } Player player = null; foreach (var ply in Server.ClientPlayers.Where(ply => ply.Id == e.SenderId)) { player = ply; } if (player != null) { Puts(player.DisplayName + " placed a " + bp.Name + " at " + e.Position); } }
private void OnCubePlacement(CubePlaceEvent e) { HookCalled("OnCubePlacement"); var bp = CodeHatch.Blocks.Inventory.InventoryUtil.GetTilesetBlueprint(e.Material, e.PrefabId); if (bp == null) return; Player player = null; foreach (var ply in Server.ClientPlayers.Where(ply => ply.Id == e.SenderId)) { player = ply; } if (player != null) Puts(player.DisplayName + " placed a " + bp.Name + " at " + e.Position); }