这一P主要是实现玩家的举盾动画
首先在PlayerManager里新增一个isBlocking的变量,然后是处理输入
if (lb_Input)
{
//do a block
playerAttacker.HandleLBAction();
}
else
{
playerManager.isBlocking = false;
}
然后在PlayerAttacker里的逻辑为
public void PerformLBBlockingAction()
{
if (playerManager.isInteracting)
{
return;
}
if (playerManager.isBlocking) return;
animatorHandler.PlayTargetAnimation("Block Start", false, true);
playerManager.isBlocking = true;
}
在PlayerManager里面更新动画机的isBlocking变量。最后根据isBlocking变量判断是否回到Empty状态。