protected void OnHitpointsDamageReceiving(object sender, HealthEventArgs e) { var auras = _auras.Cast <DamageAura>().ToList(); var modifiers = auras.Select(aura => aura.modifier); e.SetValue(ApplyModifiers(e.value, modifiers)); }
public virtual void UpdateHealth(IHealth sender, HealthEventArgs e) { IsDeadText.enabled = (sender.IsDead) ? true : false; CurrentHealth.text = health.CurrentHealth.ToString(); CurrentHealth.color = (sender.IsDead) ? Color.red : Color.white; }
/// <summary> /// If there are any listeners to the <c>ChangeHealthEvent</c> then it will send out /// the message to all the listeners. /// </summary> /// <param name="e">Any arguments that need to be passed along.</param> public virtual void HandleChangeHealth(HealthEventArgs e = null) { if (ChangeHealthEvent != null) { ChangeHealthEvent(this, e); } }
private void OnDeath(object sender, HealthEventArgs e) { StartCoroutine(FadeInThenOut(DEATH_QUIPS[UnityEngine.Random.Range(0, DEATH_QUIPS.Length)], 0.1f, 0.005f)); // this is a dumb spot for this but I dont care gameManager.Spawner.ReSpawn(e.Causee.Player); e.Causee.Player.Health.Revive(); }
protected void OnDeathBegin(HealthEventArgs e) { StopTimer(); // Wait for death sequence to finish, then show the game over or time over screen if (IsTimeOver) StartCoroutine(WaitForDeathComplete(TimeOver)); else StartCoroutine(WaitForDeathComplete(LoseLife)); }
private void Killed(object sender, HealthEventArgs e) { // Character is dead, turn off all status effects foreach (var pair in m_statusEffects) { pair.Value.Unapply(); } }
private void Damaged(object sender, HealthEventArgs e) { // If impactDamageType is the same as splashDamageType AND impact did not apply status effect // Try apply status effect from splashDamage if (!ApplyStatusEffect(e.impactDamage, e.impactDamageType) || e.impactDamageType != e.splashDamageType) { ApplyStatusEffect(e.splashDamage, e.splashDamageType); } }
public void OnHealthChanged(HealthEventArgs args) { if (args.Tag != observedTag) { return; } CalculateWidget(args.HP, args.MaxHP); }
private void Player_PlayerTakeHit(object sender, HealthEventArgs e) { Player player = (Player)e.SourceEntity; //攻撃する法 Player player2 = (Player)e.TargetEntity; //受けるほう player.SendMessage("you are source"); player2.SendMessage("you are target"); player.Level.BroadcastMessage("isdead : " + player2.HealthManager.IsDead + " health : " + player2.HealthManager.Health + " hearts : " + player2.HealthManager.Hearts);//healthかheartsが0ならば死んだ。 }
/// <summary> /// Событие "уровень здоровья изменился" /// </summary> protected virtual void OnHealthChanged(HealthEventArgs e) { EventHandler <HealthEventArgs> handler = healthChangedEvent; if (handler != null) { handler(this, e); } }
private void NotifyOtherObjects() { if (DebugMode) { Debug.Log("Notifying other objects about an HP change!"); } HealthEventArgs args = new HealthEventArgs(HP, MaxHP, gameObject.tag); _ambassador.SendMessage(_changeEvent, args, SendMessageOptions.DontRequireReceiver); _healthProvider.SendMessage(_changeEvent, args, SendMessageOptions.DontRequireReceiver); }
private void Damaged(object sender, HealthEventArgs e) { if ((e.impactDamage > 0f && e.impactDamageType == data.counterDamageType) || (e.splashDamage > 0f && e.splashDamageType == data.counterDamageType)) { Unapply(); } if (e.impactDamage > 0f && !string.IsNullOrWhiteSpace(data.shatterDamageType) && e.impactDamageType == data.shatterDamageType) { Unapply(); m_health.Kill(e.killer); } }
public void OnHealthChanged(HealthEventArgs args) { if (args.Tag != observedTag) { return; } DebugMessage("HP has changed!"); if (args.HP > 0) { return; } StartCoroutine(ReloadLevelSequence()); }
private void HealthManagerOnPlayerKilled(object sender, HealthEventArgs eventArgs) { Player targetPlayer = eventArgs.TargetEntity as Player; if (targetPlayer != null) { PlayerDeaths[targetPlayer]++; } Player sourcePlayer = eventArgs.TargetEntity as Player; if (sourcePlayer != null) { PlayerKills[sourcePlayer]++; } }
private void Player_PlayerTakeHit(object sender, HealthEventArgs e) { Player player = (Player)e.TargetEntity;//受けるほう player.BroadcastEntityEvent(); if (0 >= player.HealthManager.Health) { //https://github.com/DarkLexFirst/SkyBlock-test/blob/25483451a6a2333da3b10bdf33ead546552df26f/SkyBlock%20betaRelease/SkyBlock%20betaRelease/Managers/InventoryManager.cs string Inv = player.Inventory.GetSlots()[0].Id + "," + player.Inventory.GetSlots()[0].Metadata + "," + player.Inventory.GetSlots()[0].Count; for (var i = 1; i < player.Inventory.Slots.Count; i++) { Inv = Inv + "|" + player.Inventory.GetSlots()[i].Id + "," + player.Inventory.GetSlots()[i].Metadata + "," + player.Inventory.GetSlots()[i].Count; } string Arm = player.Inventory.Boots.Id + "," + player.Inventory.Boots.Metadata + "|" + player.Inventory.Leggings.Id + "," + player.Inventory.Leggings.Metadata + "|" + player.Inventory.Chest.Id + "," + player.Inventory.Chest.Metadata + "|" + player.Inventory.Helmet.Id + "," + player.Inventory.Helmet.Metadata; for (var i = 1; i < player.Inventory.Slots.Count; i++) { player.Inventory.Slots[i] = new ItemAir(); } inv.Add(player.Username, Inv); arm.Add(player.Username, Arm); player.Inventory.Clear(); player.HealthManager.TakeHit((Player)e.SourceEntity, 100, player.HealthManager.LastDamageCause); player.SendMessage("aaa"); if (player != null) { player.SendUpdateAttributes(); player.BroadcastEntityEvent(); } player.BroadcastSetEntityData(); player.DespawnEntity(); var mcpeRespawn = McpeRespawn.CreateObject(); mcpeRespawn.x = player.SpawnPosition.X; mcpeRespawn.y = player.SpawnPosition.Y; mcpeRespawn.z = player.SpawnPosition.Z; player.SendPackage(mcpeRespawn); player.HealthManager.ResetHealth(); } }
public void OnHurt(HealthEventArgs e) { Remove(); }
private void Damaged(object sender, HealthEventArgs e) { onDamaged.Invoke(e); }
public void OnHealthChanged(object sender, HealthEventArgs e) { this.Max = _hero.MaxHealth; this.Value = _hero.Health; }
protected virtual void EvaluateRegenerationStatus(object sender, HealthEventArgs e) { EvaluateRegenerationStatus(); }
private void Healed(object sender, HealthEventArgs e) { onHealed.Invoke(e); }
/// <summary> /// Обработать событие "Здоровье изменилось" /// </summary> protected virtual void HandleHealthChanges(object sender, HealthEventArgs e) { ConsiderHealth(e.HP); }
private void Health_healthChange(object sender, HealthEventArgs e) { int newhealthValue = e.healthPoints > 0 ? e.healthPoints : 0; healthSlider.value = newhealthValue; }
private void Health_healthDepleted(object sender, HealthEventArgs e) { Die(); }
public virtual void UpdateHealth(IHealth sender, HealthEventArgs e) { HandleChangeHealth(e); }
protected void OnDeath(HealthEventArgs e) { Camera.Wait(999f); }