You've already forked Darklings-FightingGame
mirror of
https://github.com/izzy2lost/Darklings-FightingGame.git
synced 2026-03-10 11:35:19 -07:00
113 lines
2.7 KiB
C#
113 lines
2.7 KiB
C#
using UnityEngine;
|
|
|
|
public class PlayerComboSystem : MonoBehaviour
|
|
{
|
|
private Player _player;
|
|
|
|
void Awake()
|
|
{
|
|
_player = GetComponent<Player>();
|
|
}
|
|
|
|
|
|
public static AttackSO GetComboAttack(PlayerStatsSO playerStats, InputEnum inputEnum, bool isCrouching, bool isAir)
|
|
{
|
|
if (inputEnum == InputEnum.Special)
|
|
{
|
|
return GetArcana(playerStats, isCrouching, isAir);
|
|
}
|
|
if (inputEnum == InputEnum.Throw)
|
|
{
|
|
return playerStats.mThrow;
|
|
}
|
|
if (isCrouching)
|
|
{
|
|
return GetCrouchingAttackType(playerStats, inputEnum);
|
|
}
|
|
else
|
|
{
|
|
if (isAir)
|
|
{
|
|
return GetJumpAttackType(playerStats, inputEnum);
|
|
}
|
|
else
|
|
{
|
|
return GetStandingAttackType(playerStats, inputEnum);
|
|
}
|
|
}
|
|
}
|
|
|
|
private static AttackSO GetJumpAttackType(PlayerStatsSO playerStats, InputEnum inputEnum)
|
|
{
|
|
if (inputEnum == InputEnum.Light)
|
|
{
|
|
return playerStats.jL;
|
|
}
|
|
else if (inputEnum == InputEnum.Medium)
|
|
{
|
|
return playerStats.jM;
|
|
}
|
|
else
|
|
{
|
|
return playerStats.jH;
|
|
}
|
|
}
|
|
|
|
private static AttackSO GetCrouchingAttackType(PlayerStatsSO playerStats, InputEnum inputEnum)
|
|
{
|
|
if (inputEnum == InputEnum.Light)
|
|
{
|
|
return playerStats.m2L;
|
|
}
|
|
else if (inputEnum == InputEnum.Medium)
|
|
{
|
|
return playerStats.m2M;
|
|
}
|
|
else if (inputEnum == InputEnum.Heavy)
|
|
{
|
|
return playerStats.m2H;
|
|
}
|
|
return null;
|
|
}
|
|
|
|
private static AttackSO GetStandingAttackType(PlayerStatsSO playerStats, InputEnum inputEnum)
|
|
{
|
|
Debug.Log(inputEnum);
|
|
if (inputEnum == InputEnum.Light)
|
|
{
|
|
return playerStats.m5L;
|
|
}
|
|
else if (inputEnum == InputEnum.Medium)
|
|
{
|
|
return playerStats.m5M;
|
|
}
|
|
else if (inputEnum == InputEnum.Heavy)
|
|
{
|
|
return playerStats.m5H;
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public static AttackSO GetThrow(PlayerStatsSO playerStats)
|
|
{
|
|
return playerStats.mThrow;
|
|
}
|
|
public static AttackSO GetRedFrenzy(PlayerStatsSO playerStats)
|
|
{
|
|
return playerStats.mRedFrenzy;
|
|
}
|
|
|
|
public static ArcanaSO GetArcana(PlayerStatsSO playerStats, bool isCrouching = false, bool isAir = false)
|
|
{
|
|
if (isAir)
|
|
{
|
|
return playerStats.jArcana;
|
|
}
|
|
if (isCrouching)
|
|
{
|
|
return playerStats.m2Arcana;
|
|
}
|
|
return playerStats.m5Arcana;
|
|
}
|
|
}
|