// IEnumerator RequestPathToBreach() { float RanTime = Random.Range(0.25f, ThisGCM.OrderDelay); yield return(new WaitForSeconds(RanTime)); CurrentState = GunLoaderState.RequestingPathToBreach; CommandManager.Instance.IssueMovementCommand(ThisGCM, ThisFieldGun.BreachNode); }
// void StatusCheck() { if (CheckIfAtGunBreach() == false) { if (CurrentState == GunLoaderState.AtBreach || CurrentState == GunLoaderState.Idle) { StartCoroutine(RequestPathToBreach()); } } else { CurrentState = GunLoaderState.AtBreach; } }
public override void FixedUpdate() { switch (CurrentState) { case GunLoaderState.Idle: break; case GunLoaderState.RequestingPathToBreach: if (ThisGCM.MovementOrder != null) { if (ThisGCM.MovementOrder.CurrentPathStatus == PathRequestStatus.RecivedAndValid) { CurrentState = GunLoaderState.MovingToBreach; } } break; case GunLoaderState.MovingToBreach: if (CheckIfAtGunBreach()) { CurrentState = GunLoaderState.AtBreach; } break; case GunLoaderState.AtBreach: StatusCheck(); break; case GunLoaderState.LoadingShell: break; case GunLoaderState.LoadingComplete: break; default: break; } }
// void StateSwitchMoveToBreach() { CurrretState = GunLoaderState.RequestingPathToBreach; }
//float CheckInterval = 0.5f; //float CurrentIntervalTime = 0; public override void OnStateEnter(GunCrewMember _CrewMember) { CurrretState = GunLoaderState.RequestingPathToBreach; }