Files
BABA_YAGA/Assets/Third Parties/Opsive/UltimateCharacterController/Scripts/FirstPersonController/Items/FirstPersonMeleeWeaponProperties.cs
Scove 3e39117acc Consolidate third-party plugins into Assets/Plugins
Move and consolidate many third-party plugin files and metadata from various locations (notably Assets/Third Parties/Plugins 1 and scattered Opsive/Photon folders) into a unified Assets/Plugins directory. Includes DOTween, PrimeTween, Native/BackroomsNoise, Sirenix/Odin Inspector, and Opsive UltimateCharacterController/shared libs, plus updates to several .meta files and removal of obsolete installer/legacy files. This standardizes plugin layout and cleans up duplicate/obsolete assets.
2026-06-16 18:41:44 +07:00

44 lines
1.7 KiB
C#

/// ---------------------------------------------
/// Ultimate Character Controller
/// Copyright (c) Opsive. All Rights Reserved.
/// https://www.opsive.com
/// ---------------------------------------------
namespace Opsive.UltimateCharacterController.FirstPersonController.Items
{
using Opsive.UltimateCharacterController.Items.Actions;
using Opsive.UltimateCharacterController.Items.Actions.PerspectiveProperties;
using UnityEngine;
/// <summary>
/// Describes any first person perspective dependent properties for the MeleeWeapon.
/// </summary>
public class FirstPersonMeleeWeaponProperties : FirstPersonWeaponProperties, IMeleeWeaponPerspectiveProperties
{
[Tooltip("An array of hitboxes that the MeleeWeapon detects collisions with.")]
[SerializeField] protected MeleeWeapon.MeleeHitbox[] m_Hitboxes;
[Tooltip("The location that the melee weapon trail is spawned at.")]
[SerializeField] protected Transform m_TrailLocation;
public MeleeWeapon.MeleeHitbox[] Hitboxes { get { return m_Hitboxes; } set { m_Hitboxes = value; } }
public Transform TrailLocation { get { return m_TrailLocation; } set { m_TrailLocation = value; } }
/// <summary>
/// Initialize the default values.
/// </summary>
protected override void Awake()
{
base.Awake();
if (m_Object == null) {
return;
}
for (int i = 0; i < m_Hitboxes.Length; ++i) {
if (!m_Hitboxes[i].Initialize(m_Object, m_CharacterTransform)) {
Debug.LogError($"Error: Unable to initialize {name}. Ensure the weapon has a collider.");
}
}
}
}
}