public int DeleteRoomByID(int?schoolID, int?roomID) { int returnCode; // Check if arguments are null if (schoolID != null && roomID != null) { // Look for school in DB Schools existingSchool; Rooms existingRoom; existingSchool = SchoolUtils.LookForSchool((int)schoolID); existingRoom = RoomUtils.LookForRoom((int)schoolID, (int)roomID); // If ID already existing => modifyname if (existingSchool != null && existingRoom != null) { // Delete Roomin DB ; returnCode = 1 if operation successful in method // 0 if not returnCode = RoomUtils.DeleteRoomByID((int)schoolID, (int)roomID); } else // School not existing or Room not existing, returnCode = -1 { returnCode = -1; } } else { // Arguments not valid returnCode = -1; } return(returnCode); }
public override void OnJoinedRoom() { // trigger events bool isPrivate = false; string gamemode = ""; if (PhotonNetwork.CurrentRoom != null) { var currentRoom = PhotonNetwork.NetworkingClient.CurrentRoom; isPrivate = !currentRoom.IsVisible || currentRoom.CustomProperties.ContainsKey("Description"); // Room Browser rooms if (currentRoom.CustomProperties.TryGetValue("gameMode", out var gamemodeObject)) { gamemode = gamemodeObject as string; } } Events.RoomJoinedArgs args = new Events.RoomJoinedArgs { isPrivate = isPrivate, Gamemode = gamemode }; events.TriggerRoomJoin(args); lastRoom = args; var table = new Hashtable(); var mods = new DataClass(); mods.installedIDs = BepInEx.Bootstrap.Chainloader.PluginInfos.Select(x => x.Value.Metadata.GUID).ToArray(); table.Add("mods", JsonUtility.ToJson(mods)); PhotonNetwork.LocalPlayer.SetCustomProperties(table); RoomUtils.ResetQueue(); }
//Delete : Rooms public ActionResult DeleteRoom(int Id) { if (RoomUtils.DeleteRoom(Id)) { return(RedirectToAction("ListRooms")); } return(RedirectToAction("ListRooms")); }
//GET : Rooms public ActionResult ListRooms(int?page, string searchString, string deleted) { List <DataAccessLayer.Entities.Room> roomContextList = RoomUtils.GetAllRooms(); List <Room> roomList = Mappings.MappingDtos.EntityRoomToModelRoomAsList(roomContextList); if (!String.IsNullOrEmpty(searchString)) { roomList = roomList.Where(s => s.Name.ToLower().Contains(searchString.ToLower())).ToList(); } return(View(roomList.ToPagedList(page ?? 1, pageSize: 20))); }
void Awake() { RoomUtils.RoomCode = RoomUtils.RandomString(6); // Generate a random room code in case we need it GameObject dataObject = new GameObject(); DontDestroyOnLoad(dataObject); PhotonNetworkControllerPatch.events = new Events(); UtillaPatches.ApplyHarmonyPatches(); }
public ActionResult CreateRoom(Room Room) { if (ModelState.IsValid) { if (RoomUtils.InsertRoom(Room.Name)) { return(RedirectToAction("ListRooms")); } } return(View(Room)); }
public ActionResult EditRoom(int Id, Room Room) { if (ModelState.IsValid) { if (RoomUtils.UpdateRoom(Mappings.MappingDtos.ModelRoomToEntityRoom(Room))) { return(RedirectToAction("ListRooms")); } } return(View(Room)); }
/// <summary> /// 生成给定元素的几何实体的常规模型,支持链接文件中的元素id /// </summary> /// <param name="document"></param> /// <param name="integerIds">元素id</param> /// <param name="needHighLight">是否需要高亮</param> public static List <ElementId> CreateDirectShapes(Document document, List <int> integerIds, bool needHighLight = true) { var docs = LinkedElementUtils.GetAllLinkedDocument(document); docs.Add(document); var ids = integerIds.Select(e => new ElementId(e)).ToList(); var solids = new List <Solid>(); foreach (var id in ids) { Element ele = null; foreach (var doc in docs) { ele = doc.GetElement(id); if (ele != null) { break; } } if (ele == null) { continue; } if (ele is Room) { solids.Add(RoomUtils.GetRoomActualSolid(ele as Room, document)); } else { solids.Add(GeometryUtils.GetSolid(ele)); } } ids.Clear(); using (Transaction tr = new Transaction(document, "DirectShapes")) { tr.Start(); foreach (var item in solids) { var directShapeId = CreateDirectShape(document, item); ids.Add(directShapeId); } tr.Commit(); } if (needHighLight) { ViewUtils.HighLightElements(new UIDocument(document), ids); } return(ids); }
/// Returns all RoomTiles that're connected to this one (including this one). private List <RoomTile> GetConnectedTiles(RoomTile firstTile) { RoomData firstRD = firstTile.MyRoomData; List <RoomData> roomDatas = RoomUtils.GetRoomsConnectedToRoom(firstRD); List <RoomTile> tiles = new List <RoomTile>(); foreach (RoomData rd in roomDatas) { tiles.Add(GetRoomTileByKey(rd.RoomKey)); } return(tiles); }
public static DataAccessLayer.Entities.Event ModelEventToEntityEvent(Models.Event modelEvent) { DataAccessLayer.Entities.Event entityEvent = new DataAccessLayer.Entities.Event() { Card = ClientUtils.GetClientByTicketId(modelEvent.TicketId), Date = modelEvent.Date, Id = modelEvent.Id, Inserter = EmployeeUtils.GetEmployeeByName(modelEvent.EmployeeName), Room = RoomUtils.GetRoomByName(modelEvent.RoomName), Ticket = TicketUtils.GetTicketById(modelEvent.TicketId), Type = modelEvent.Type }; return(entityEvent); }
void Awake() { RoomUtils.RoomCode = RoomUtils.RandomString(6); // Generate a random room code in case we need it GameObject dataObject = new GameObject(); DontDestroyOnLoad(dataObject); gameObject.AddComponent <UtillaNetworkController>(); Events.GameInitialized += PostInitialized; UtillaNetworkController.events = events; PostInitializedPatch.events = events; UtillaPatches.ApplyHarmonyPatches(); }
void Setup() { /// set position GameObject gObj = gameObject; JMesh jMsh = m_jRoom.boundary; // Vector2 pos = Utils.Rvt2CamCoord(jMsh.BD.min, m_floor.FloorBDs, true, m_floor.PixelPerUnit); gObj.transform.position = new Vector3(0, 0, 5); /// calculate mesh /// reshape List <Vector3> v2ds = Utils.Rvt2CamCoord(jMsh.Vct2ds, m_floor.FloorBDs, true, m_floor.PixelPerUnit); List <Vector2> uv = new List <Vector2>(); for (int i = 0; i < v2ds.Count; i++) { uv.Add(new Vector2((float)i / (float)v2ds.Count * jMsh.BD.size.x, (float)i / (float)v2ds.Count * jMsh.BD.size.y)); } MeshFilter mFilter = gObj.GetComponent <MeshFilter>(); Mesh oldMesh = mFilter.mesh; Mesh msh = new Mesh(); mFilter.mesh = msh; msh.vertices = v2ds.ToArray(); jMsh.Triangles.Reverse(); msh.triangles = jMsh.Triangles.ToArray(); msh.uv = uv.ToArray(); MeshCollider msCll = gObj.GetComponent <MeshCollider>(); msCll.sharedMesh = msh; MeshRenderer mshRender = GetComponent <MeshRenderer>(); mshRender.material.color = RoomUtils.GetColor(m_jRoom.program_type); foreach (JFurniture fn in m_jRoom.furniture) { GameObject dskObj = GameObject.Instantiate(m_floor.m_desk); Desk dsk = dskObj.GetComponent <Desk>(); dsk.m_furniture = fn; dsk.m_rm = this; } }
private static void Postfix() { // trigger events bool isPrivate = false; if (PhotonNetwork.CurrentRoom != null) { var currentRoom = PhotonNetwork.NetworkingClient.CurrentRoom; isPrivate = !currentRoom.IsVisible || currentRoom.CustomProperties.ContainsKey("Description"); // Room Browser rooms } Debug.Log("IS PRIVATE?"); Debug.Log(isPrivate); Events.RoomJoinedArgs args = new Events.RoomJoinedArgs(); args.isPrivate = isPrivate; events.TriggerRoomJoin(args); // handle forcing private lobbies bool forcePrivateLobbies = false; var infos = BepInEx.Bootstrap.Chainloader.PluginInfos; foreach (var info in infos) { if (info.Value == null) { continue; } BaseUnityPlugin plugin = info.Value.Instance; if (plugin == null) { continue; } var attribute = plugin.GetType().GetCustomAttribute <ForcePrivateLobbyAttribute>(); if (attribute != null) { forcePrivateLobbies = true; } } if (forcePrivateLobbies) { RoomUtils.JoinPrivateLobby(); } }
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { var uidoc = commandData.Application.ActiveUIDocument; try { // TODO: 测试代码这里实现 var roomref = uidoc.Selection.PickObject(Autodesk.Revit.UI.Selection.ObjectType.LinkedElement, new LinkedElementSelectionFilter <Room>(), "请选择一个链接文件中的房间"); Room room = LinkedElementUtils.GetLinkedDocumnet(uidoc.Document, roomref).GetElement(roomref.LinkedElementId) as Room; var rst = RoomUtils.TryGetRoomHeight(room, out double roomHeight, uidoc.Document); string msg = string.Empty; switch (rst) { case -1: msg = "参数法"; break; case 0: msg = "标高法"; break; case 1: msg = "射线法"; break; default: break; } msg += $"获取的房间高度为{roomHeight.FeetToMM()}"; TaskDialog.Show("房间高度测试", msg); return(Result.Succeeded); } catch (Exception ex) { TaskDialog.Show("提示", ex.ToString()); return(Result.Cancelled); } }
void DrawLable() { if (null == m_txtObj) { string tag = RoomUtils.GetRoomTag(m_jRoom); if (null == tag) { hasTag = false; return; } m_txtObj = new GameObject("Rm_Lable+" + m_jRoom.number, typeof(RectTransform)); Text tx = m_txtObj.AddComponent <Text>(); tx.text = tag; tx.font = m_floor.m_tagFont; tx.fontSize = 8; tx.rectTransform.position = Vector2.zero; tx.color = Color.black; tx.horizontalOverflow = HorizontalWrapMode.Overflow; tx.verticalOverflow = VerticalWrapMode.Overflow; tx.alignment = TextAnchor.MiddleCenter; m_txtObj.transform.SetParent(m_floor.m_canves.transform); RectTransform txTrf = m_txtObj.GetComponent <RectTransform>(); txTrf.localScale = Vector3.one; txTrf.sizeDelta = new Vector2(0, 0); } else { if (!hasTag) { return; } } Text myTx = m_txtObj.GetComponent <Text>(); myTx.transform.position = Utils.Rvt2PixCoord(m_jRoom.location.GetVct2d(), m_floor.FloorBDs, true, m_floor.PixelPerUnit, m_floor.m_camera, m_floor.m_canves); }
public int InsertRoom(int?schoolID, string roomName) { int returnCode; // Check if arguments are null if (schoolID != null && roomName != null) { // Look for school in DB Schools existingSchool; existingSchool = SchoolUtils.LookForSchool((int)schoolID); // If School already existing if (existingSchool != null) { // Looking if room already exists Rooms newRoom; newRoom = RoomUtils.LookForRoom((int)schoolID, roomName); if (newRoom == null) { // Create a new Room in DB ; returnCode = 1 if operation successful in method // 0 if not returnCode = RoomUtils.InsertRoom((int)schoolID, roomName); } else { returnCode = 0; // Room already existing } } else // School not existing, returnCode = -1 { returnCode = -1; } } else { // Arguments not valid returnCode = -1; } return(returnCode); }
public ActionResult SaveToXls(string what) { DataTable dt = null; bool result = false; switch (what) { case "Client": List <DataAccessLayer.Entities.Client> layerClientList = ClientUtils.GetAllClients(); List <Client> clientList = Mappings.MappingDtos.EntityClientToModelClientAsList(layerClientList); dt = DataToExcel.ConvertToDataTable(clientList); result = DataToExcel.FlushToExcel <Client>(dt); break; case "Employee": List <DataAccessLayer.Entities.Employee> layerEmplyeeList = EmployeeUtils.GetAllEmplyees(); List <Employee> employeeList = Mappings.MappingDtos.EntityEmployeeToModelEmployeeAsList(layerEmplyeeList); dt = DataToExcel.ConvertToDataTable(employeeList); result = DataToExcel.FlushToExcel <Employee>(dt); break; case "Event": List <DataAccessLayer.Entities.Event> layerEventList = EventUtils.GetAllEvents(); List <Event> eventList = Mappings.MappingDtos.EntityEventToModelEventList(layerEventList); dt = DataToExcel.ConvertToDataTable(eventList); result = DataToExcel.FlushToExcel <Event>(dt); break; case "Room": List <DataAccessLayer.Entities.Room> layerRoomList = RoomUtils.GetAllRooms(); List <Room> roomList = Mappings.MappingDtos.EntityRoomToModelRoomAsList(layerRoomList); dt = DataToExcel.ConvertToDataTable(roomList); result = DataToExcel.FlushToExcel <Room>(dt); break; case "Ticket": List <DataAccessLayer.Entities.Ticket> layerTicketList = TicketUtils.GetAllTickets(); List <Ticket> ticketList = Mappings.MappingDtos.EntityTicketLIstToModelTicketAsList(layerTicketList); dt = DataToExcel.ConvertToDataTable(ticketList); result = DataToExcel.FlushToExcel <Ticket>(dt); break; case "Type": List <DataAccessLayer.Entities.TicketType> layerTypeList = TicketTypeUtils.GetAllTicketTypes(); List <TicketType> typeList = Mappings.MappingDtos.EntityTicketLIstToModelTicketTypeAsList(layerTypeList); dt = DataToExcel.ConvertToDataTable(typeList); result = DataToExcel.FlushToExcel <TicketType>(dt); break; default: break; } if (result) { return(RedirectToAction("ListEmployees")); } else { return(RedirectToAction("Index")); } }
public ActionResult Enter(Ticket ticket) { return(View(new RoomTicket { Rooms = MappingDtos.EntityRoomToModelRoomAsList(RoomUtils.GetAllRooms()), Ticket = ticket })); }