120 lines
4.6 KiB
C#
120 lines
4.6 KiB
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace Cielonos.MainGame.Characters
|
|
{
|
|
public partial class PlayerOperationSubcontroller : SubcontrollerBase<Player>, IPlayerSubcontroller
|
|
{
|
|
public Player player => owner;
|
|
|
|
public bool isOverridingMainWeaponPress;
|
|
|
|
public override void Initialize()
|
|
{
|
|
base.Initialize();
|
|
isOverridingMainWeaponPress = false;
|
|
}
|
|
}
|
|
|
|
public partial class PlayerOperationSubcontroller
|
|
{
|
|
public event Action OnInteract;
|
|
|
|
public event Action<Vector3> OnDash;
|
|
public event Action OnDodge;
|
|
|
|
public event Action OnLockOnTarget;
|
|
|
|
public event Action OnWalkPress;
|
|
public event Action OnWalkRelease;
|
|
|
|
public event Action OnMainWeaponPrimaryPress;
|
|
public event Action OnMainWeaponPrimaryHold;
|
|
public event Action OnMainWeaponPrimaryRelease;
|
|
|
|
public event Action OnMainWeaponSecondaryPress;
|
|
public event Action OnMainWeaponSecondaryHold;
|
|
public event Action OnMainWeaponSecondaryRelease;
|
|
|
|
public event Action OnMainWeaponTertiaryPress;
|
|
public event Action OnMainWeaponTertiaryHold;
|
|
public event Action OnMainWeaponTertiaryRelease;
|
|
|
|
public event Action OnMainWeaponQuaternaryPress;
|
|
public event Action OnMainWeaponQuaternaryHold;
|
|
public event Action OnMainWeaponQuaternaryRelease;
|
|
|
|
public event Action<int> OnSwitchMainWeapon;
|
|
public event Action OnOpenMainWeaponRoulette;
|
|
public event Action OnCloseMainWeaponRoulette;
|
|
public event Action OnFastSwitchMainWeapon;
|
|
|
|
public event Action OnReload;
|
|
|
|
public event Action OnUseConsumableItem;
|
|
|
|
public event Action OnSupportEquipment0Press;
|
|
public event Action OnSupportEquipment0Release;
|
|
public event Action OnSupportEquipment1Press;
|
|
public event Action OnSupportEquipment1Release;
|
|
public event Action OnSupportEquipment2Press;
|
|
public event Action OnSupportEquipment2Release;
|
|
public event Action OnSupportEquipment3Press;
|
|
public event Action OnSupportEquipment3Release;
|
|
}
|
|
|
|
public partial class PlayerOperationSubcontroller
|
|
{
|
|
public void Interact() => OnInteract?.Invoke();
|
|
|
|
public void Dash(Vector3 direction) => OnDash?.Invoke(direction);
|
|
|
|
public void Dodge() => OnDodge?.Invoke();
|
|
|
|
public void LockOnTarget() => OnLockOnTarget?.Invoke();
|
|
|
|
public void WalkPress() => OnWalkPress?.Invoke();
|
|
|
|
public void WalkRelease() => OnWalkRelease?.Invoke();
|
|
|
|
public void MainWeaponPrimaryPress() => OnMainWeaponPrimaryPress?.Invoke();
|
|
|
|
public void MainWeaponPrimaryRelease() => OnMainWeaponPrimaryRelease?.Invoke();
|
|
|
|
public void MainWeaponSecondaryPress() => OnMainWeaponSecondaryPress?.Invoke();
|
|
|
|
public void MainWeaponSecondaryRelease() => OnMainWeaponSecondaryRelease?.Invoke();
|
|
|
|
public void MainWeaponSpecialAPress() => OnMainWeaponTertiaryPress?.Invoke();
|
|
|
|
public void MainWeaponSpecialARelease() => OnMainWeaponTertiaryRelease?.Invoke();
|
|
|
|
public void MainWeaponSpecialBPress() => OnMainWeaponQuaternaryPress?.Invoke();
|
|
|
|
public void MainWeaponSpecialBRelease() => OnMainWeaponQuaternaryRelease?.Invoke();
|
|
|
|
public void SwitchMainWeapon(int direction) => OnSwitchMainWeapon?.Invoke(direction);
|
|
|
|
public void OpenMainWeaponRoulette() => OnOpenMainWeaponRoulette?.Invoke();
|
|
|
|
public void CloseMainWeaponRoulette() => OnCloseMainWeaponRoulette?.Invoke();
|
|
|
|
public void FastSwitchMainWeapon() => OnFastSwitchMainWeapon?.Invoke();
|
|
|
|
public void Reload() => OnReload?.Invoke();
|
|
|
|
public void UseConsumableItem() => OnUseConsumableItem?.Invoke();
|
|
|
|
public void SupportEquipment0Press() => OnSupportEquipment0Press?.Invoke();
|
|
public void SupportEquipment0Release() => OnSupportEquipment0Release?.Invoke();
|
|
|
|
public void SupportEquipment1Press() => OnSupportEquipment1Press?.Invoke();
|
|
public void SupportEquipment1Release() => OnSupportEquipment1Release?.Invoke();
|
|
|
|
public void SupportEquipment2Press() => OnSupportEquipment2Press?.Invoke();
|
|
public void SupportEquipment2Release() => OnSupportEquipment2Release?.Invoke();
|
|
|
|
public void SupportEquipment3Press() => OnSupportEquipment3Press?.Invoke();
|
|
public void SupportEquipment3Release() => OnSupportEquipment3Release?.Invoke();
|
|
}
|
|
} |