public void Given_hazards_Then_should_detach_correctly() { //Given var user = new UserForAuditing(); var target = GeneralRiskAssessment.Create("", "", default(long), null); var hazardDetaching = new Hazard() { Id = 1 }; var hazardToRemain = new Hazard() { Id = 2 }; IEnumerable<Hazard> hazards = new[] { hazardDetaching, hazardToRemain, }; target.AttachHazardsToRiskAssessment(hazards, user); //When target.DetachHazardsFromRiskAssessment(new List<Hazard> { hazardDetaching }, user); //Then Assert.That(target.Hazards.Count(x => !x.Deleted), Is.EqualTo(1)); Assert.That(target.LastModifiedBy, Is.EqualTo(user)); }
void Awake() { (collider as SphereCollider).radius = radius; cachedHazard = (GameObject.Instantiate(hazardPrefab.gameObject, transform.position, transform.rotation) as GameObject).GetComponent<Hazard>(); cachedHazard.gameObject.SetActive(false); toDirectionRef = transform.FindChild(TO_DIRECTION_REF_NAME); }
public void When_clone_for_risk_assessment_templating_Then_should_have_correct_result() { //Given var user = new UserForAuditing(); var riskAssessment = new GeneralRiskAssessment(); var hazard = new Hazard(); var riskAssessmentHazard = MultiHazardRiskAssessmentHazard.Create(riskAssessment, hazard, user); riskAssessmentHazard.UpdateDescription("Test Description", user); var controlMeasure1 = new MultiHazardRiskAssessmentControlMeasure(); var controlMeasure2 = new MultiHazardRiskAssessmentControlMeasure(); riskAssessmentHazard.AddControlMeasure(controlMeasure1, user); riskAssessmentHazard.AddControlMeasure(controlMeasure2, user); //When var result = riskAssessmentHazard.CloneForRiskAssessmentTemplating(user, riskAssessment); //Then Assert.That(result.Description, Is.EqualTo(riskAssessmentHazard.Description)); Assert.That(result.MultiHazardRiskAssessment, Is.EqualTo(riskAssessment)); Assert.That(result.Hazard, Is.EqualTo(hazard)); Assert.That(result.CreatedBy, Is.EqualTo(user)); Assert.That(result.CreatedOn.Value.Date, Is.EqualTo(DateTime.Now.Date)); Assert.That(result.ControlMeasures.Count, Is.EqualTo(riskAssessmentHazard.ControlMeasures.Count)); }
public void RecieveDamage( Hazard source ) { if ( source.element != GetElement ) Kill(); else { // Some kind of feedback that player got by without damage // particles or sound or whatever. source.AddToScore(); Destroy( source.gameObject ); } }
public static CompanyHazardDto CreateFrom(Hazard companyDefault) { return new CompanyHazardDto() { Id = companyDefault.Id, Name = companyDefault.Name, IsSystemDefault = GetIsSystemDefault(companyDefault.CompanyId), IsGra = companyDefault.HazardTypes.Count(x => x.Id == (int)HazardTypeEnum.General) == 1, IsPra = companyDefault.HazardTypes.Count(x => x.Id == (int)HazardTypeEnum.Personal) == 1, IsFra = companyDefault.HazardTypes.Count(x=>x.Id == (int)HazardTypeEnum.Fire)==1 }; }
public void TakeDamage(Hazard source) { if(invulnerable) { return; } current -= source.damage; invulnerable = true; _invulnerableTime = Time.time; if(current <= 0) { Destroy(this.gameObject); } }
public void Given_general_risk_assessment_contains_generic_hazard_When_CloneForRiskAssessmentTemplating_called_Then_same_hazard_is_referenced() { var hazard = new Hazard { Name = "Generic Hazard", HazardTypes = _hazardTypes }; var hazards = new List<Hazard> {hazard}; _generalRiskAssessment.AttachHazardsToRiskAssessment(hazards, _currentUser); var newGeneralRiskAssessment = _generalRiskAssessment.Copy("General Risk Assessment 2", "GRA02", _currentUser) as GeneralRiskAssessment; Assert.That(newGeneralRiskAssessment.Hazards.Count, Is.EqualTo(1)); Assert.That(newGeneralRiskAssessment.Hazards[0].Hazard, Is.SameAs(hazard)); }
private void addHazard_Click(object sender, EventArgs e) { try { Hazard h = new Hazard(); h.hazard_start = double.Parse(textBox1.Text); h.hazard_end = double.Parse(textBox2.Text); current_video.hazards.Add(h); } catch (Exception ex) { MessageBox.Show("Start and end must be a point in the video. This hazard was not added."); } load_hazards(); }
public void Given_riskassessment_one_hazard_no_further_control_measure_Then_should_be_able_to_delete() { //Given var hazard = new Hazard(); var user = new UserForAuditing(); var riskAssessment = GeneralRiskAssessment.Create("", "", default(long), null); var riskAssessmentHazard = MultiHazardRiskAssessmentHazard.Create(riskAssessment, hazard, user); riskAssessment.Hazards.Add(riskAssessmentHazard); //When var result = riskAssessment.HasUndeletedTasks(); //Then Assert.False(result); }
public void Given_riskassessmenthazardid_that_exists_When_Find_Risk_Assessment_Hazard_Then_should_return_hazard() { //Given var target = GeneralRiskAssessment.Create("", "", default(long), null); var user = new UserForAuditing(); var hazard = new Hazard(); target.AttachHazardsToRiskAssessment(new[] { hazard }, user); var hazardId = target.Hazards.First().Id; //When var result = target.FindRiskAssessmentHazard(hazardId); //Then Assert.That(result, Is.Not.Null); }
private void CreateHazard(HazardTypes hazardType) { switch (hazardType) { case HazardTypes.STATIONARY_SPIKES: hazard = new StationarySpikes(this); break; case HazardTypes.RETRACTABLE_SPIKES: hazard = new RetractableSpikes(this); break; case HazardTypes.LAVA_FALLS: hazard = new Lavafall(this); break; } hazards.Add(hazard); }
private Hazard CreateHazard(int level, Vector3 pos, PlayerID owner = PlayerID.NP, float dir = 1) { Hazard hazard = null; if (DataUtility.gameData.isNetworkedGame && PhotonNetwork.IsMasterClient) { var hp = PhotonNetwork.Instantiate(Path.Combine(pathRelativeToResources, prefabName), pos, Quaternion.identity); hazard = hp.GetComponent <Hazard>(); } else { hazard = GetPooledHazard(); } hazard.Initialize(this, level, pos, owner, dir); hazards.Add(hazard); return(hazard); }
public IActionResult AdminPut(int id, [FromBody] Hazard hazard) { var userId = _UserManager.GetUserId(User); var existingHazard = _Context.Hazards.Find(id); if (existingHazard == null) { return(NotFound()); } existingHazard.Latitude = hazard.Latitude; existingHazard.Longitude = hazard.Longitude; existingHazard.Type = hazard.Type; _Context.SaveChanges(); return(Ok(existingHazard)); }
public void Given_a_GRA_has_duplicate_hazards_when_removing_the_duplicate_Then_it_should_be_removed() { //Given var user = new UserForAuditing(); var target = GeneralRiskAssessment.Create("", "", default(long), null); var duplicateHazard = new Hazard() {Id = 123}; target.Hazards.Add(MultiHazardRiskAssessmentHazard.Create(target, new Hazard() {Id = 1}, null)); target.Hazards.Add(MultiHazardRiskAssessmentHazard.Create(target, duplicateHazard, null)); target.Hazards.Add(MultiHazardRiskAssessmentHazard.Create(target, duplicateHazard, null)); //When target.DetachHazardsFromRiskAssessment(new List<Hazard> {duplicateHazard}, user); //Then Assert.That(target.Hazards.Count(x => x.Hazard.Id == duplicateHazard.Id && x.Deleted), Is.EqualTo(2)); Assert.That(target.Hazards.Count(x => x.Hazard.Id != duplicateHazard.Id && !x.Deleted), Is.EqualTo(1)); }
private void EnvironmentDetection() { float stench = 0; float noise = 0; RaycastHit2D[] env = Physics2D.CircleCastAll(transform.position, 0.5f, Vector2.up, 1.0f, 1 << LayerMask.NameToLayer("Environment")); foreach (RaycastHit2D obj in env) { Distraction distraction = obj.transform.GetComponent <Distraction>(); if (distraction != null) { float dist = Vector2.Distance(transform.position, distraction.transform.position); float falloff = m_Falloff.Evaluate(dist / distraction.radius); float output = distraction.distractionAmount * falloff; switch (distraction.distractionType) { case Distraction.DistractionType.Smell: stench += output; break; case Distraction.DistractionType.Noise: noise += output; break; } } else { Hazard hazard = obj.transform.GetComponent <Hazard>(); if (hazard != null) { float dist = Vector2.Distance(transform.position, hazard.transform.position); float falloff = m_Falloff.Evaluate(dist / hazard.radius); stench -= hazard.smell * falloff; noise -= hazard.noise * falloff; } } } m_StinkCurrent = stench; m_NoiseCurrent = noise; }
public void meteoChange() { int rand = Hazard.Next(1, 100); if (rand > 0 && rand < Config.probaPluie) { meteo.Etat = "pluie"; meteo.Notify(); } else if (rand > Config.probaPluie && rand < (Config.probaPluie + Config.probaBrouillard)) { meteo.Etat = "brouillard"; meteo.Notify(); } else { meteo.Etat = "soleil"; meteo.Notify(); } }
void OnTriggerEnter2D(Collider2D hitInfo) { if (!piercing) { Trail trail = hitInfo.GetComponent <Trail>(); Weapon weapon = hitInfo.GetComponent <Weapon>(); Hazard hazard = hitInfo.GetComponent <Hazard>(); if (trail == null) { if (((!EnemyShot && weapon == null) || (EnemyShot && hazard == null)) && hitInfo.tag != "MainCamera" && hitInfo.gameObject.layer != 4) { GameObject impact = Instantiate(impactEffect, transform.position, transform.rotation, impactEffect.transform.parent); impact.transform.localScale = new Vector2(transform.localScale.x, transform.localScale.y); SoundManager.PlaySound("shot explode"); Destroy(gameObject); } } } }
public HazardFile(string fileName) { try { using (STFReader stf = new STFReader(fileName, false)) { stf.ParseFile(new STFReader.TokenProcessor[] { new STFReader.TokenProcessor("tr_worldfile", () => { Hazard = new Hazard(stf); }), }); //TODO This should be changed to STFException.TraceError() with defaults values created if (Hazard == null) { throw new STFException(stf, "Missing Tr_WorldFile"); } } } finally { } }
public StandardVocabOutput Find(string find) { //Build filtered data cache var dataCache = new List<Hazard>(); var hazards = _context.Hazards .Include(x => x.HazardType) .Include(x => x.Parent) .Where(x => find == "" || x.Value.ToLower().Contains(find.ToLower())); dataCache.AddRange(hazards.ToList()); bool foundParents = true; while (foundParents) { foundParents = false; var copyCache = new Hazard[dataCache.Count]; Array.Copy(dataCache.ToArray(), copyCache, dataCache.Count); foreach (var hazard in copyCache) { if (hazard.Parent != null && !hazards.Any(x => x.Id == hazard.Parent.Id)) { var parents = _context.Hazards .Include(x => x.HazardType) .Include(x => x.Parent) .Where(x => x.Id == hazard.Parent.Id); foreach (var parent in parents) { if (!dataCache.Any(x => x.Id == parent.Id)) { dataCache.Add(parent); foundParents = true; } } } } } return new StandardVocabOutput { Items = GetHazards(dataCache.AsQueryable()) }; }
/// <summary> /// Checks to see which safety item is getting picked up and acts accordingly /// </summary> public void Equip() { //collision timer fixes bugs of having constant visuals blocked by assets and //collision boxes collision_Timer = 10f; hazard_Menu_UI.SetActive(false); Pointer.MenuIsActive(false); Hazard hazard = safety_item.GetComponent <Hazard>(); if (hazard != null) { hazard.Completed = true; } //attachs the helmet to player given it a more realistic feeling if (safety_item.name == "Hard_Hat" || safety_item.name == "Hard_Hat(Clone)") { safety_item.gameObject.tag = "Untagged"; //print(safety_item.name); safety_item.transform.SetParent(player_Camera.transform); safety_item.transform.SetPositionAndRotation(player_Camera.transform.position, player_Camera.transform.rotation); player_Icon.ToggleHardHat(true); safety_item = null; } else if (safety_item.name == "Safety Vest" || safety_item.name == "Safety Vest(Clone)") { player_Icon.ToggleVest(true); Destroy(safety_item); safety_item = null; } else if (safety_item.name == "Safety Glasses" || safety_item.name == "Safety Glasses(Clone)") { player_Icon.ToggleGoggles(true); Destroy(safety_item); safety_item = null; } //destroy object and implement attaching to player; }
private BloodParticleData GetBloodParticleData(Hazard hazard, Vector2 ninjaPosition) { var star = hazard as NinjaStarController; if (star != null) { var data = new BloodParticleData(Quaternion.Euler(0, 0, Random.Range(-40.0f, 40.0f)) * (star.Rigidbody2D.velocity * Random.Range(0.1f, 0.75f)), ninjaPosition); return(data); } var saw = hazard as RotatingHazard; if (saw != null) { float speed = saw.RotationSpeed; float angle = Random.Range(0.0f, 359.0f); Vector2 velocity = Quaternion.Euler(0, 0, angle) * new Vector2(speed * Random.Range(0.125f, 1.25f), 0); Vector2 position = Quaternion.Euler(0, 0, angle) * new Vector2(saw.Radius * 1.1f, 0) + saw.transform.position; return(new BloodParticleData(velocity, position)); } return(new BloodParticleData(Random.insideUnitCircle * 10, ninjaPosition)); }
public void Given_controlmeasure_Then_should_add_correctly() { //Given var user = new UserForAuditing(); var riskAssessment = GeneralRiskAssessment.Create("", "", default(long), null); var hazard = new Hazard(); var riskAssessmentHazard = MultiHazardRiskAssessmentHazard.Create(riskAssessment, hazard, user); riskAssessmentHazard.Id = 1; var controlMeasure = MultiHazardRiskAssessmentControlMeasure.Create("", riskAssessmentHazard, user); riskAssessment.Hazards.Add(riskAssessmentHazard); //When riskAssessmentHazard.AddControlMeasure(controlMeasure, user); //Then Assert.That(riskAssessmentHazard.ControlMeasures.Count, Is.EqualTo(1)); Assert.That(riskAssessmentHazard.LastModifiedBy, Is.EqualTo(user)); }
} // End of Update // Return information if it is time to spawn hazard. private bool IsTimeToSpawn(Hazard hazard) { // If it is time to spawn hazard. if(this.last_random < this.time_since_last_spawn) { // Reset last spawn time. this.time_since_last_spawn=0; // Reset last random value. this.last_random=Random.Range(0.0F,hazard.seconds_to_spawn*this.spawn_rate*2); // Return true. return true; } // If it is not time to spawn hazard. else { // Actualize last spawn time. this.time_since_last_spawn = Time.deltaTime + this.time_since_last_spawn; // Return false. return false; } } // End of IsTimeToSpawn
public override void OnInspectorGUI() { base.OnInspectorGUI(); EditorGUILayout.LabelField("Approximated Stats"); Hazard c = (Hazard)serializedObject.targetObject; EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Stealth", UnityEngine.GUILayout.MaxWidth(UnityEngine.Screen.width * .31f)); EditorGUILayout.LabelField("+", UnityEngine.GUILayout.MaxWidth(10)); EditorGUILayout.IntField(Hazard.GetSkillDC(c.GetAttribute(MStatAttr.STEALTH), c.level) - 10); EditorGUILayout.LabelField("/", UnityEngine.GUILayout.MaxWidth(10)); EditorGUILayout.IntField(Hazard.GetSkillDC(c.GetAttribute(MStatAttr.STEALTH), c.level)); EditorGUILayout.EndHorizontal(); EditorGUILayout.IntField("Disable", Hazard.GetSkillDC(c.GetAttribute(MStatAttr.DISABLE), c.level)); EditorGUILayout.IntField("AC", Hazard.GetArmorClass(c.GetAttribute(MStatAttr.AC), c.level)); EditorGUILayout.IntField("Attack", Hazard.GetAttack(c.level, c.isComplex)); EditorGUILayout.IntField("Save DC", Hazard.GetSaveDC(c.GetAttribute(MStatAttr.ABILITY_DC), c.level)); EditorGUILayout.IntField("Fort", Hazard.GetFortReflexBonus(c.GetAttribute(MStatAttr.FORT), c.level)); EditorGUILayout.IntField("Ref", Hazard.GetFortReflexBonus(c.GetAttribute(MStatAttr.REFX), c.level)); }
public void When_addfurtheractiontasks_Then_should_add_correctly() { //Given var user = new UserForAuditing(); var hazard = new Hazard(); var riskAssessment = new GeneralRiskAssessment(); var target = MultiHazardRiskAssessmentHazard.Create(riskAssessment, hazard, user); var furtherActionTask = new MultiHazardRiskAssessmentFurtherControlMeasureTask(); //When target.AddFurtherActionTask(furtherActionTask, user); //Then Assert.That(target.FurtherControlMeasureTasks.Count, Is.EqualTo(1)); Assert.That(target.FurtherControlMeasureTasks.First().MultiHazardRiskAssessmentHazard, Is.EqualTo(target)); Assert.That(target.LastModifiedBy, Is.EqualTo(user)); Assert.That(target.LastModifiedOn.Value.Date, Is.EqualTo(DateTime.Today.Date)); }
public void NextObject() { currentCooldown--; currentPosition++; if (currentCooldown <= 0) { int r = UnityEngine.Random.Range(0, possibleHazards.Count); while (apperanceCooldowns[r] > 0) //Just check once? { r = UnityEngine.Random.Range(0, possibleHazards.Count); } for (int i = 0; i < apperanceCooldowns.Length; i++) { apperanceCooldowns[i] = Mathf.Clamp(apperanceCooldowns[i] - 1, 0, 100); } Hazard h = possibleHazards[r]; apperanceCooldowns[r] = h.apperanceCooldown; if (h.cooldownOtherLanes) { controller.BlockHazard(2, h); } h.spawnedPosition = currentPosition; currentCooldown = h.laneCooldown; GameObject g = GameObject.Instantiate( h.gameObject, h.spawnOffset + controller.transform.position + startingPosition.localPosition, Quaternion.identity * Quaternion.Euler(laneRotation)); currentHazards.Add(g.GetComponent <Hazard>()); CleanHazards(); } }
void CheckHit(Collider2D hitInfo) { if (lastHit + iTime < Time.time) { Enemy enemy = hitInfo.GetComponent <Enemy>(); Hazard hazard = hitInfo.GetComponent <Hazard>(); if (enemy != null || hazard != null) { this.TakeDamage(20); //knockback if (hitInfo.transform.position.x - this.transform.position.x > 0) { m_Rigidbody2D.AddForce(new Vector2(-3, 4) * knockback * m_Rigidbody2D.mass, ForceMode2D.Impulse); } else { m_Rigidbody2D.AddForce(new Vector2(3, 4) * knockback * m_Rigidbody2D.mass, ForceMode2D.Impulse); } } } }
public IActionResult Hazards(Hazard theModel) { var optionsBuilder = new DbContextOptionsBuilder <AppContext>(); optionsBuilder.UseSqlServer("Server=(localdb)\\mssqllocaldb; Database=disaster_database;Trusted_Connection=True;"); using (var context = new AppContext(optionsBuilder.Options)) { Hazard temp = new Hazard { Latitude = theModel.Latitude, Longitude = theModel.Longitude, PosReport = 0, NegReport = 0, Name = theModel.Name, Description = theModel.Description }; context.Hazards.Add(temp); context.SaveChanges(); } return(RedirectToAction("Hazards", "Home")); }
public void Given_controlmeasure_Then_should_mark_control_measure_as_deleted() { //Given var user = new UserForAuditing(); var riskAssessment = GeneralRiskAssessment.Create("", "", default(long), null); var hazard = new Hazard(); var riskAssessmentHazard = MultiHazardRiskAssessmentHazard.Create(riskAssessment, hazard, user); riskAssessmentHazard.Id = 1; var controlMeasure = MultiHazardRiskAssessmentControlMeasure.Create("", riskAssessmentHazard, user); controlMeasure.Id = 1; riskAssessmentHazard.ControlMeasures.Add(controlMeasure); riskAssessment.Hazards.Add(riskAssessmentHazard); //When riskAssessmentHazard.RemoveControlMeasure(1, user); //Then Assert.That(riskAssessmentHazard.ControlMeasures[0].Deleted, Is.True); }
public void SetUp(Color color, Hazard hazard, Vector2 ninjaPosition) { for (var i = 0; i < particleNumber; i++) { var data = GetBloodParticleData(hazard, ninjaPosition); Vector2 particleVelocity = data.Velocity; var particle = Instantiate(bloodParticle, data.Position, Quaternion.identity); particle.SetUp(color, particleVelocity); } var saw = hazard as RotatingHazard; if (saw != null) { for (var i = 0; i < 10; i++) { var position = (Vector2)saw.transform.position + (Random.insideUnitCircle * saw.Radius); var particle = Instantiate(bloodParticle, position, Quaternion.identity); particle.SetUp(color, Vector2.zero); } } }
public async Task <IActionResult> ConsumerPost([FromBody] Hazard hazard) { var user = await _UserManager.GetUserAsync(User); var permission = new Permission(); permission.Delete = true; permission.Grant = true; permission.Read = true; permission.Write = true; permission.Type = Permissions.Hazard; permission.User = user; hazard.Signature = permission.Signature = Guid.NewGuid(); _Context.Permissions.Add(permission); _Context.Hazards.Add(hazard); _Context.SaveChanges(); return(Ok(hazard)); }
private void CheckHazards(BoundingBox2D playerBox) { foreach (Hazard hazard in hazards) { BoundingBox2D hazardBox = hazard.BoundingBox; if (hazard == lastHazard) { if (!lastHazard.Active || !playerBox.Intersects(hazardBox)) { lastHazard = null; } } else if (hazard.Active) { if (playerBox.Intersects(hazardBox)) { lastHazard = hazard; player.RegisterDamage(GetCollisionDirection(playerBox, hazardBox, hazard.Type)); } } } }
public IList <HazardPdfCdfHazardTriplet> Calculate(string populationGroup, int currentState) { var stateTransitionCodes = new List <string>(); var returnObject = new List <HazardPdfCdfHazardTriplet>(); Console.WriteLine("Calculating Transition:" + transitionCode); var observationList = hazardReader.GetData(populationGroup, dateFrom, dateTo, new Domain.Date.DateIncrement(DateIncrementTypes.Month, 1), transitionCode, currentState, 1); //var nelsonAalen = new KaplanMeier(observationList); //var nResult = nelsonAalen.GetSurvivalValueUpToPeriod(periods); var hazard = new Hazard(observationList); var hzd = hazard.GetHazardFunctionOverEachPeriod(); var pdf = hazard.GetPDF(); var cdf = hazard.SurvivalFunction(); returnObject.Add(new HazardPdfCdfHazardTriplet(pdf, cdf, hzd, dateFrom, transitionCode, populationGroup.ToString())); return(returnObject); }
protected void CreateBullet(Vector2 offset, float angle) { offset = Math.Project2Dto3D(offset); Vector3 localOffset = transform.TransformPoint(offset); Debug.DrawLine(transform.position, localOffset, Color.yellow, 1); var newAmmo = Instantiate(Ammo, localOffset, Quaternion.identity); Projectile p = newAmmo.GetComponent <Projectile>(); if (p) { p.Fire(transform.forward); } Hazard hazard = newAmmo.GetComponent <Hazard>(); if (hazard) { hazard.ignoredColliders = new List <Collider>(collidersToIgnore); hazard.enabled = true; } }
public void LevelUpTest() { // Character with initial resistance of 0 Character c4Clone = c4.Copy(); // Hazard that deals 4 HP Hazard h3Clone = h3.Copy(); // Destructible with 5 HP Destructible d2Clone = d2.Copy(); h3Clone.ApplyDamage(c4Clone); // Since C4 has no resistance, hazard deals full damage Assert.AreEqual(c4Clone.HP, 7); for (int i = 0; i < 5; i++) { c4Clone.LevelUp(); } // Character 1 grew up 5 levels Assert.AreEqual(c4Clone.Level, 6); //(int)System.Math.Ceiling(0 + (1 * (6 - 1) * 0.25)); = 2 Assert.AreEqual(c4Clone.Resistance, 2); h3Clone.ApplyDamage(c4Clone); // After leveling up, hazard deals 1HP Assert.AreEqual(c4Clone.HP, 6); c4Clone.ApplyDamage(d2Clone); // After leveling up, C4 has 3 strength Assert.AreEqual(d2Clone.HP, 2); }
public void Given_controlmeasure_Then_should_update_correctly() { //Given string target = "Test"; var user = new UserForAuditing(); var riskAssessment = GeneralRiskAssessment.Create("", "", default(long), null); var hazard = new Hazard(); var riskAssessmentHazard = MultiHazardRiskAssessmentHazard.Create(riskAssessment, hazard, user); riskAssessmentHazard.Id = 1; var controlMeasure = MultiHazardRiskAssessmentControlMeasure.Create("", riskAssessmentHazard, user); controlMeasure.Id = 1; riskAssessmentHazard.ControlMeasures.Add(controlMeasure); riskAssessment.Hazards.Add(riskAssessmentHazard); //When riskAssessment.UpdateControlMeasureForRiskAssessmentHazard(1, 1, target, user); //Then Assert.That(riskAssessmentHazard.ControlMeasures.Count(c => c.ControlMeasure == target), Is.EqualTo(1)); Assert.That(riskAssessmentHazard.LastModifiedBy, Is.EqualTo(user)); }
private void HandleHazard(Hazard hazard) { _log.ErrorIfNull(hazard, $"{hazard} has tag {Tags.Hazard} but does not have an item component."); foreach (var effect in hazard.Effects) { switch (effect) { case HazardEffects.Damage: var damagingHazard = hazard as IDamaging; _log.ErrorIfNull(damagingHazard, $"{hazard} has effect {effect} but does not implement {typeof(IDamaging).Name}."); ApplyDamage(damagingHazard.Damage); break; case HazardEffects.Impulse: var knockbackHazard = hazard as IImpulsive; _log.ErrorIfNull(knockbackHazard, $"{hazard} has effect {effect} but does not implement {typeof(IImpulsive).Name}."); _rigidbody.velocity = knockbackHazard.GetImpulse(transform.position, _rigidbody.velocity); break; default: _log.Error($"Unknown effect '{effect}'."); break; } } }
override protected IEnumerator AnimationCoroutine(GridBlock targetBlock) { ParticleSystem ps = GetComponent <ParticleSystem>(); foreach (GameObject target in targetBlock.objectsOnBlock) { Hazard hazardTest = target.GetComponent <Hazard>(); if (hazardTest != null) { var trigger = ps.trigger; trigger.enabled = true; trigger.SetCollider(0, target.GetComponent <Collider>()); trigger.radiusScale = 0.5f; ps.Play(); yield return(new WaitForSeconds(2.0f)); ps.Stop(); break; } } }
private bool HazardAttachedToRiskAssessment(Hazard hazard) { return Hazards.Any(x => x.Hazard.Id == hazard.Id); }
private bool HazardNotAttachedToRiskAssessment(Hazard hazard) { return Hazards.Count(x => x.Hazard.Id == hazard.Id) == 0; }
public virtual void UpdateHazardOrder(Hazard hazard, int orderNumber, UserForAuditing user) { if (HazardAttachedToRiskAssessment(hazard)) { var riskAssessmentHazard = Hazards.First(x => x.Hazard.Id == hazard.Id); riskAssessmentHazard.OrderNumber = orderNumber; riskAssessmentHazard.SetLastModifiedDetails(user); SetLastModifiedDetails(user); } }
private void DetachHazardFromRiskAssessment(Hazard hazard, UserForAuditing user) { if (Hazards.Count(x => x.Hazard.Id == hazard.Id) == 0) { throw new HazardNotAttachedToRiskAssessmentException(Id, hazard.Id); } Hazards.Where(x => x.Hazard.Id == hazard.Id) .ToList() .ForEach(multiHazardRiskAssessmentHazard => { if (!multiHazardRiskAssessmentHazard.CanDeleteHazard()) { throw new Exception("MultiHazardRiskAssessmentHazard with Id " + multiHazardRiskAssessmentHazard.Id.ToString(CultureInfo.InvariantCulture) + " cannot be removed from risk assessment because it contains Control Measures or Further Control Measures."); } if (multiHazardRiskAssessmentHazard.ControlMeasures != null) { multiHazardRiskAssessmentHazard.ControlMeasures.ToList().ForEach(x => x.SetLastModifiedDetails(user)); } multiHazardRiskAssessmentHazard.Deleted = true; multiHazardRiskAssessmentHazard.SetLastModifiedDetails(user); }); SetLastModifiedDetails(user); }
public override void Deplacement(int dimX, int dimY, PersonnageAbstrait unPerso) { ObservableCollection <ZoneAbstrait> zoneAccessible = new ObservableCollection <ZoneAbstrait>(); ZoneAbstrait zoneFourmille = null; foreach (ZoneAbstrait uneZone in unPerso.ChoixZoneSuivante.Zonesaccessibles) { /*si on trouve une Fourmille on l'attaque*/ if (uneZone.PersonnageList.Where(x => x.GetType().Equals(typeof(Reine))).Count() > 0) { zoneFourmille = uneZone; break; } else if (uneZone.PersonnageList.Where(x => x.GetType().Equals(typeof(Ouvriere))).Count() > 0) { zoneFourmille = uneZone; break; } else if (uneZone.PersonnageList.Where(x => x.GetType().Equals(typeof(Guerriere))).Count() > 0) { zoneFourmille = uneZone; break; } else { zoneAccessible.Add(uneZone); } } if (zoneFourmille != null) { unPerso.Position.X = zoneFourmille.Position.X; unPerso.Position.Y = zoneFourmille.Position.Y; } else { int maCase = Hazard.Next(zoneAccessible.Count); zoneAccessible.OrderByDescending(x => x.Position.X); if (unPerso.Position.X > unPerso.Maison.X) { if (zoneAccessible[maCase].Position.X != unPerso.Position.X && (unPerso.Position.X - unPerso.Maison.X) > zoneAccessible[maCase].Position.X - unPerso.Maison.X) { unPerso.Position.X = zoneAccessible[maCase].Position.X; } } else { if (zoneAccessible[maCase].Position.X != unPerso.Position.X && (unPerso.Position.X - unPerso.Maison.X) < zoneAccessible[maCase].Position.X - unPerso.Maison.X) { unPerso.Position.X = zoneAccessible[maCase].Position.X; } } if (unPerso.Position.Y > unPerso.Maison.Y) { if (zoneAccessible[maCase].Position.Y != unPerso.Position.Y && (unPerso.Position.Y - unPerso.Maison.Y) > zoneAccessible[maCase].Position.Y - unPerso.Maison.Y) { unPerso.Position.Y = zoneAccessible[maCase].Position.Y; } } else { if (zoneAccessible[maCase].Position.Y != unPerso.Position.Y && (unPerso.Position.Y - unPerso.Maison.Y) < zoneAccessible[maCase].Position.Y - unPerso.Maison.Y) { unPerso.Position.Y = zoneAccessible[maCase].Position.Y; } } } /* * int newX = unPerso.Position.X + Hazard.Next(3) - 1; * int newY = unPerso.Position.Y + Hazard.Next(3) - 1; * if ((newX >= 0) && (newX < dimX) && (newX<=unPerso.Maison.X+5) && (newX>=unPerso.Maison.X-5)) unPerso.Position.X = newX; * if ((newY >= 0) && (newY < dimX) && (newY <= unPerso.Maison.Y + 5) && (newY >= unPerso.Maison.Y - 5)) unPerso.Position.Y = newY; */ }
Type GetTypeOfHazard(Hazard HazardPrefab) { return HazardPrefab.GetType(); }
public void Given_general_risk_assessment_When_AttachHazardToRiskAssessment_for_a_hazard_that_has_already_been_attached_then_no_error_message_and_no_duplicates() { var hazard = new Hazard() { Id = 123 }; var hazard1 = MultiHazardRiskAssessmentHazard.Create(_generalRiskAssessment, hazard, null); var hazard2 = MultiHazardRiskAssessmentHazard.Create(_generalRiskAssessment, hazard, null); _generalRiskAssessment.AttachHazardToRiskAssessment(hazard,null); _generalRiskAssessment.AttachHazardToRiskAssessment(hazard, null); Assert.That(_generalRiskAssessment.Hazards.Count, Is.EqualTo(1)); Assert.That(_generalRiskAssessment.Hazards[0].Hazard.Id, Is.EqualTo(hazard.Id)); }
public static Hazard Copy(this Hazard hazard) { return(new Hazard(hazard.Strength)); }
public HazardDetail(Hazard haz) { InitializeComponent(); BindingContext = new HazardDetailViewModel(Navigation, haz); }
public HazardWindow(MainEditorWindow form, Hazard hazard, bool editing) { this.form = form; this.editing = editing; this.hazard = hazard; InitializeComponent(); this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; directions = new List<String>(); directions.AddRange(new string[] { "UP", "DOWN", "LEFT", "RIGHT" }); hazards = new List<string>(); hazards.AddRange(new string[] { "SpikeShooter", "Moving platform" }); this.comboBox2.DataSource = directions; this.comboBox1.DataSource = hazards; if (hazard is SpikeShooter) { /* Make sure the correct hazard is chosen in the combobox and disable the box, to prevent a casting error. */ this.comboBox1.SelectedIndex = 0; this.comboBox1.Enabled = false; SpikeShooter s = (SpikeShooter)hazard; switch (s.Direction) { case Direction.UP: this.comboBox2.SelectedIndex = 0; break; case Direction.DOWN: this.comboBox2.SelectedIndex = 1; break; case Direction.LEFT: this.comboBox2.SelectedIndex = 2; break; case Direction.RIGHT: this.comboBox2.SelectedIndex = 3; break; } this.xField.Text = "" + s.PosX; this.yField.Text = "" + s.PosY; this.timingField.Text = "" + s.Timing; } else if (hazard is MovingPlatform) { /* Make sure the correct hazard is chosen in the combobox and disable the box, to prevent a casting error. */ this.comboBox1.SelectedIndex = 1; this.comboBox1.Enabled = false; MovingPlatform m = (MovingPlatform)hazard; switch (m.Direction) { case Direction.UP: this.comboBox2.SelectedIndex = 0; break; case Direction.DOWN: this.comboBox2.SelectedIndex = 1; break; case Direction.LEFT: this.comboBox2.SelectedIndex = 2; break; case Direction.RIGHT: this.comboBox2.SelectedIndex = 3; break; } this.xField.Text = "" + m.PosX; this.yField.Text = "" + m.PosY; this.lengthField.Text = "" + m.Length; ; this.speedField.Text = "" + m.Speed; this.movementField.Text = "" + m.MovementAmount; } }
public void AddHazard(Hazard hazard) { hazards.Add(hazard); this.gridPanel.Invalidate(true); gridPanel.Update(); }
public void Given_control_measure_doesnt_exist_When_removing_control_measure_Then_should_get_correct_exception() { //Given var user = new UserForAuditing(); var riskAssessment = GeneralRiskAssessment.Create("", "", default(long), null); var hazard = new Hazard(); var riskAssessmentHazard = MultiHazardRiskAssessmentHazard.Create(riskAssessment, hazard, user); riskAssessmentHazard.Id = 1; var controlMeasure = MultiHazardRiskAssessmentControlMeasure.Create("", riskAssessmentHazard, user); controlMeasure.Id = 1; riskAssessmentHazard.ControlMeasures.Add(controlMeasure); riskAssessment.Hazards.Add(riskAssessmentHazard); //When //Then Assert.Throws<ControlMethodDoesNotExistInHazard>(() => riskAssessmentHazard.RemoveControlMeasure(2, user)); }
public virtual void AttachHazardToRiskAssessment(Hazard hazard, UserForAuditing user) { if (!HazardAttachedToRiskAssessment(hazard)) { var multiHazardRiskAssessmentHazard = MultiHazardRiskAssessmentHazard.Create(this, hazard, user); Hazards.Add(multiHazardRiskAssessmentHazard); SetLastModifiedDetails(user); } }
public void SelectHazard(Hazard _hazard) { hazard = _hazard; }
void Awake() { plane = GetComponentInChildren<Hazard>(); }
public void Given_general_risk_assessment_contains_duplicate_hazards_When_CloneForRiskAssessmentTemplating_called_Then_only_one_hazard_entered() { var hazard = new Hazard() { Id = 123 }; var hazard1 = MultiHazardRiskAssessmentHazard.Create(_generalRiskAssessment, hazard, null); var hazard2 = MultiHazardRiskAssessmentHazard.Create(_generalRiskAssessment, hazard, null); _generalRiskAssessment.Hazards.Add(hazard1); _generalRiskAssessment.Hazards.Add(hazard2); var newGeneralRiskAssessment = _generalRiskAssessment.Copy("General Risk Assessment 3", "GRA03", _currentUser) as GeneralRiskAssessment; Assert.That(newGeneralRiskAssessment.Hazards.Count, Is.EqualTo(1)); Assert.That(newGeneralRiskAssessment.Hazards[0].Hazard.Id, Is.EqualTo(hazard.Id)); }
protected override void OnHazardTriggered(Hazard hazard) { _triggered.Value = true; }
public void freezeHazard(Hazard haz) { haz.permafreeze(); IceExplosion.Play(); }
private void OnCollisionEnter2D(Collision2D col) { if (removing) { return; } //collision with geometry //collision.contacts[0].normal GenericEnemy en = col.gameObject.GetComponent <GenericEnemy>(); if ((en != null) && (en.Alive) && (!col.collider.isTrigger)) { if (CanFreezeEnemies) { if (Launched) { en.freeze(1.2f); FreezePoof.Play(); Remove(); } else { /* * if (FreezeFieldWhileHeld) * { * en.freeze(1.2f); * FreezePoof.Play(); * } */ } } return; } EnemyProjectile proj = col.gameObject.GetComponent <EnemyProjectile>(); if ((proj != null) && (proj.enabled) && (proj.Live) && (CanFreezeProjectiles)) { freezeProjectile(proj); Remove(); return; } Hazard haz = col.gameObject.GetComponent <Hazard>(); if ((haz != null) && (haz.enabled) && (!haz.Permafrozen)) { if (CanFreezeHazards) { freezeHazard(haz); } Remove(); return; } //EnvironmentHazard if (col.gameObject.layer == LayerMask.NameToLayer("Geometry")) { //Hit a wall. //Create Ice on this wall if (FormsIcePillar) { Vector2 ndir = col.contacts[0].normal; IcePillar p = GameObject.Instantiate(IcePillarPrefab, col.contacts[0].point, Quaternion.LookRotation(ndir, -Vector3.forward)).GetComponent <IcePillar>(); //p.transform.Rotate(90f,0f,0f,Space.World); p.Lifetime = 5f; } FreezePoof.Play(); if (BlizzardField) { explode(); } Remove(); return; } }
private void saveButton_Click(object sender, EventArgs e) { if (this.comboBox1.SelectedIndex == 0) { SpikeShooter s = (SpikeShooter)hazard; Direction direction = Direction.UP; switch (this.comboBox2.SelectedIndex) { case 1: direction = Direction.DOWN; break; case 2: direction = Direction.LEFT; break; case 3: direction = Direction.RIGHT; break; } s.Direction = direction; s.PosX = Int32.Parse(this.xField.Text); s.PosY = Int32.Parse(this.yField.Text); s.Timing = Int32.Parse(this.timingField.Text); if (s.Timing <= 0) { s.Timing = 1; } if (!editing) { form.AddHazard(s); } else { form.UpdateHazards(); } } if (this.comboBox1.SelectedIndex == 1) { hazard = new MovingPlatform(); MovingPlatform m = (MovingPlatform)hazard; Direction direction = Direction.UP; switch (this.comboBox2.SelectedIndex) { case 1: direction = Direction.DOWN; break; case 2: direction = Direction.LEFT; break; case 3: direction = Direction.RIGHT; break; } m.Direction = direction; m.PosX = Int32.Parse(this.xField.Text); m.PosY = Int32.Parse(this.yField.Text); m.Speed = Int32.Parse(this.speedField.Text); m.MovementAmount = Int32.Parse(this.movementField.Text); m.Length = Int32.Parse(this.lengthField.Text); if (m.Speed <= 0) { m.Speed = 1; } if (m.MovementAmount <= 0) { m.MovementAmount = 1; } if (m.Length <= 0) { m.Length = 1; } if (!editing) { form.AddHazard(m); } else { form.UpdateHazards(); } } Close(); }