private void OnDamageModify(EntityUid uid, InventoryComponent component, DamageModifyEvent args)
 {
     foreach (var equipped in component.GetAllHeldItems())
     {
         RaiseLocalEvent(equipped.Uid, args, false);
     }
 }
 private void OnDamageModify(EntityUid uid, InventoryComponent component, DamageModifyEvent args)
 {
     RelayInventoryEvent(component, args);
 }
Esempio n. 3
0
 private void OnDamageModify(EntityUid uid, ArmorComponent component, DamageModifyEvent args)
 {
     args.Damage = DamageSpecifier.ApplyModifierSet(args.Damage, component.Modifiers);
 }
    private void OnUserDamageModified(EntityUid uid, BlockingUserComponent component, DamageModifyEvent args)
    {
        if (TryComp <BlockingComponent>(component.BlockingItem, out var blockingComponent))
        {
            if (_proto.TryIndex(blockingComponent.PassiveBlockDamageModifer, out DamageModifierSetPrototype? passiveblockModifier) && !blockingComponent.IsBlocking)
            {
                args.Damage = DamageSpecifier.ApplyModifierSet(args.Damage, passiveblockModifier);
            }

            if (_proto.TryIndex(blockingComponent.ActiveBlockDamageModifier, out DamageModifierSetPrototype? activeBlockModifier) && blockingComponent.IsBlocking)
            {
                args.Damage = DamageSpecifier.ApplyModifierSet(args.Damage, activeBlockModifier);
                SoundSystem.Play(blockingComponent.BlockSound.GetSound(), Filter.Pvs(component.Owner, entityManager: EntityManager), component.Owner, AudioHelpers.WithVariation(0.2f));
            }
        }
    }