public void UseCrabAction(Action crabAction)
{
ActionLength = crabAction.BaseLength;
float actionMulti = 1 - 0.5f * (1f - (float)CurrentHealth / (float)MaxHealth);
if (actionMulti < 0.65f)
actionMulti = 0.65f;
if (crabAction.CanAdjustSpeed)
ActionLength *= actionMulti;
if (crabAction.Id == (int)CrabActions.Walk)
{
int randomWalk = random.Next(0, 2);
GameServer.CrabAction(MovementActions[randomWalk].Id, ActionLength);
}
else
GameServer.CrabAction(crabAction.Id, 1/actionMulti);
crabAction.HasBeenUsed = true;
crabAction.TimeSinceUsage.Restart();
CurrentAction.Restart();
IsPerformingAction = true;
}