public void SendDamageToItem() { while (ItemsOfInterest.Count > 0) { IItemOfInterest itemOfInterest = ItemsOfInterest.Dequeue(); DamagePackage packageCopy = ObjectClone.Clone <DamagePackage>(ExplosionDamage); float adjustedDamage = Mathf.Lerp(ExplosionDamage.DamageSent * ForceAtEdge, ExplosionDamage.DamageSent * ForceAtCenter, NormalizedRadius); packageCopy.DamageSent = adjustedDamage; packageCopy.ForceSent = Mathf.Max(MinimumForce, packageCopy.ForceSent * NormalizedRadius); packageCopy.Point = itemOfInterest.Position; packageCopy.Origin = transform.position; packageCopy.Target = itemOfInterest; //Debug.Log("Force: " + packageCopy.Force.ToString()); DamageManager.Get.SendDamage(packageCopy); //characters and creatures are automatically stunned if (itemOfInterest.IOIType == ItemOfInterestType.WorldItem) { if (itemOfInterest.worlditem.Is <Creature>(out mCreatureCheck)) { mCreatureCheck.TryToStun(adjustedDamage); } else if (itemOfInterest.worlditem.Is <Character>(out mCharacterCheck)) { mCharacterCheck.TryToStun(adjustedDamage); } } } }
private void bItemsOfInterest_Click(object sender, RoutedEventArgs e) { ItemsOfInterest dlgIOI = new ItemsOfInterest(ItemsManagers[(int)ActiveLeagueId], AccManager); dlgIOI.Owner = this; dlgIOI.ShowDialog(); }
private void bItemsOfInterest_Click(object sender, RoutedEventArgs e) { ItemsOfInterest dlgIOI = new ItemsOfInterest(ItemsManagers[(int)ActiveLeagueId], AccManager); dlgIOI.Owner = this; dlgIOI.ShowDialog(); }