protected static void SetClosestTexture(List <Signboard> signs, ref Signboard current, Texture2D texture, string type) { if (signs.Count > 0) { Signboard sign = signs[0]; if (sign != current) { current = sign; //Debug.Log ("Closest texture is " + sign.name); if (texture.name != sign.TextureName) { //get the texture from mods and set pixels if (!Mods.Get.Runtime.Texture(texture, "Signboard", sign.TextureName)) { ////Debug.Log ("COULDN'T LOAD TEXTURE " + sign.TextureName); } else { //Debug.Log ("LOADED SIGN BOARD TEXTURE " + sign.TextureName); } } //Debug.Log ("Setting state to " + sign.Style.ToString ()); sign.worlditem.State = type + sign.Style.ToString(); } } }
public void AssignSignboard_InvalidSignboard_AddSignboard() { Signboard signboard = new Signboard("test", Guid.NewGuid(), Guid.NewGuid(), "0.0.0", 1); Announcement announcement = make_Announcement("test", Severity.General, new DateTime(2014, 1, 1), new DateTime(2014, 2, 1)); announcement.AssignToSignboard(signboard); announcement.AssignToSignboard(signboard); }
public static StateModel From(Device device, Signboard signboard) { return new StateModel() { State = device.State.ToString(), ChangeDate = device.DeviceStateChanges.OrderByDescending(x => x.ChangedDate).First().ChangedDate, MacAddress = device.MacAddress.Address, Comment = device.Comment }; }
public static Signboard AddBar(Signboard newSign, WorldItem owner, WIGroup locationGroup, STransform offset, string textureName) { newSign = GetOrCreateSignboard(newSign, owner, locationGroup, offset, textureName, "Bar"); switch (newSign.Style) { case SignboardStyle.A: default: Get.BarASignboards.SafeAdd(newSign); break; case SignboardStyle.B: Get.BarBSignboards.SafeAdd(newSign); break; } return(newSign); }
public static Signboard GetOrCreateSignboard(Signboard sign, WorldItem owner, WIGroup locationGroup, STransform offset, string textureName, string type) { if (sign == null) { WorldItem newSignWorldItem = null; WorldItems.CloneWorldItem("Decorations", "Signboard", offset, false, locationGroup, out newSignWorldItem); newSignWorldItem.Initialize(); //offset.ApplyTo (newSignWorldItem.transform, false); sign = newSignWorldItem.GetOrAdd <Signboard>(); sign.Owner = owner; sign.TextureName = textureName; sign.Style = SignboardStyle.A; if (!string.IsNullOrEmpty(textureName)) { if (textureName.StartsWith("B_")) { sign.Style = SignboardStyle.B; } //Debug.Log ("Setting signoboard state to " + type + sign.Style.ToString ()); newSignWorldItem.State = type + sign.Style.ToString(); } } return(sign); }
public IHttpActionResult Post(Guid companyId, SignboardInputModel model) { Signboard signboard; var device = DeviceRepository.GetByMacAddress(MacAddress.From(model.MacAddress)); if (device == null || device.CompanyId != companyId) { return BadRequest("MAC address is not registered."); } else if (device.State == DeviceState.Approved) { return BadRequest("MAC address used by another signboard"); } signboard = new Signboard(model.Name, companyId, device.Id, "0.0.0", 1); SignboardRepository.Add(signboard); device.Approve(); DeviceRepository.Update(device); var responseModel = SignboardModel.From(signboard, device.MacAddress); return Created(new Uri(Url.Link("GetSignboard", new { signboardId = signboard.Id, companyId = signboard.CompanyId })), responseModel); }
public static Signboard AddLandmark(Signboard newSign, WorldItem owner, WIGroup locationGroup, STransform offset, string textureName) { newSign = GetOrCreateSignboard(newSign, owner, locationGroup, offset, textureName, "Landmark"); Get.LandmarkSignboards.SafeAdd(newSign); return(newSign); }
public void UnassignSignboard_UnassignValidSignboard_RemoveSignboard() { Signboard signboard = new Signboard("test", Guid.NewGuid(), Guid.NewGuid(), "0.0.0", 1); Announcement announcement = make_Announcement("test", Severity.General, new DateTime(2014, 1, 1), new DateTime(2014, 2, 1)); announcement.AssignToSignboard(signboard); announcement.UnassignSignboard(signboard); Assert.AreEqual(announcement.SignboardIds.Count(), 0); }
public void AssignSignboards_InvalidSignboards_DuplicatesInList() { List<Signboard> signboards = new List<Signboard>(); Signboard signboard = new Signboard("test", Guid.NewGuid(), Guid.NewGuid(), "0.0.0", 1); signboards.Add(signboard); signboards.Add(signboard); Announcement announcement = make_Announcement("test", Severity.General, new DateTime(2014, 1, 1), new DateTime(2014, 2, 1)); announcement.AssignToSignboards(signboards); }
public void AssignSignboards_InvalidSignboards_AlreadyExists() { List<Signboard> signboards = new List<Signboard>(); Signboard signboard1 = new Signboard("test", Guid.NewGuid(), Guid.NewGuid(), "0.0.0", 1); Signboard signboard2 = new Signboard("test", Guid.NewGuid(), Guid.NewGuid(), "0.0.0", 1); signboards.Add(signboard1); signboards.Add(signboard2); Announcement announcement = make_Announcement("test", Severity.General, new DateTime(2014, 1, 1), new DateTime(2014, 2, 1)); announcement.AssignToSignboard(signboard1); announcement.AssignToSignboards(signboards); Assert.AreEqual(announcement.SignboardIds.Count(), 2); }
internal static SignboardModel From(Signboard signboard, MacAddress macAddress) { return new SignboardModel() { SignboardId = signboard.Id, Name = signboard.Name, MacAddress = macAddress.ToString() }; }