Files
7d2dXG/Mods/zzz_REBIRTH__Utils/Harmony/Harmony_ItemActionAttack.cs
Nathaniel Cosford 062dfab2cd Patched
2025-05-30 01:04:40 +09:30

69 lines
2.5 KiB
C#

using System.Collections.Generic;
namespace Harmony.EntityPlayerPatches
{
internal class ItemActionAttackPatches
{
[HarmonyPatch(typeof(ItemActionAttack), "Hit")]
public class HitPatchEx
{
// 22 args, wow
public static bool Prefix(
WorldRayHitInfo hitInfo,
int _attackerEntityId,
EnumDamageTypes _damageType,
float _blockDamage,
float _entityDamage,
float _staminaDamageMultiplier,
float _weaponCondition,
float _criticalHitChanceOLD,
float _dismemberChance,
string _attackingDeviceMadeOf,
DamageMultiplier _damageMultiplier,
List<string> _buffActions,
ItemActionAttack.AttackHitInfo _attackDetails,
int _flags = 1,
int _actionExp = 0,
float _actionExpBonus = 0f,
ItemActionAttack rangeCheckedAction = null,
Dictionary<string, ItemActionAttack.Bonuses> _toolBonuses = null,
ItemActionAttack.EnumAttackMode _attackMode = ItemActionAttack.EnumAttackMode.RealNoHarvesting,
Dictionary<string, string> _hitSoundOverrides = null,
int ownedEntityId = -1,
ItemValue damagingItemValue = null)
{
// our hook will simply call our replacement method
//Log.Out($"HitPatchEx - Attacker id: {_attackerEntityId}, dmg type: {_damageType}, blk dmg: {_blockDamage}, ent dmg: {_entityDamage}");
ItemActionAttackRebirth.Hit(
hitInfo,
_attackerEntityId,
_damageType,
_blockDamage,
_entityDamage,
_staminaDamageMultiplier,
_weaponCondition,
_criticalHitChanceOLD,
_dismemberChance,
_attackingDeviceMadeOf,
_damageMultiplier,
_buffActions,
_attackDetails,
_flags,
_actionExp,
_actionExpBonus,
rangeCheckedAction,
_toolBonuses,
_attackMode,
_hitSoundOverrides,
ownedEntityId,
damagingItemValue);
return false; // don't process the original method
}
}
}
}