コード例 #1
0
 private void _StartPlaying()
 {
     _CharacterController.MandatorySquat();
     _State          = CrossRoadStateEnum.WaitNoCar;
     _TimeToWait     = WaitNoCarTime;
     _ShouldSpawnCar = false;
 }
コード例 #2
0
 private void _Refuse()
 {
     _CharacterController.ShakeHead();
     _CharacterController.ChangeMovable(false);
     _State      = CrossRoadStateEnum.Refuse;
     _TimeToWait = WaitRefuseTime;
 }
コード例 #3
0
 private void _Finish()
 {
     _State = CrossRoadStateEnum.Finished;
     _CharacterController.ChangeMovable(true);
     _ShouldSpawnCar = true;
     Used            = true;
     CrossRoadBound.transform.localScale = new Vector3(1, 1, 100);
 }
コード例 #4
0
    private void _WaitOK()
    {
        switch (_State)
        {
        case CrossRoadStateEnum.Refuse:
            _CharacterController.ChangeMovable(true);
            _State = CrossRoadStateEnum.Nothing;
            break;

        case CrossRoadStateEnum.WaitForChangeShape:
            _StartPlaying();
            break;

        case CrossRoadStateEnum.WaitNoCar:
            _StartCrossing();
            break;

        case CrossRoadStateEnum.Crossing:
            _Finish();
            break;
        }
    }
コード例 #5
0
 private void OnEnable()
 {
     FirstCarPast = false;
     _State       = CrossRoadStateEnum.Nothing;
 }
コード例 #6
0
 private void _StartCrossing()
 {
     _State      = CrossRoadStateEnum.Crossing;
     _TimeToWait = WaitCrossRoadTime;
 }
コード例 #7
0
 private void _StartWaitingForChangeShape()
 {
     Used = true;
     _CharacterController.ChangeMovable(false);
     _State = CrossRoadStateEnum.WaitForChangeShape;
 }