Не могу заставить мой счетчик работать правильно - PullRequest
0 голосов
/ 01 июня 2018

Это должно быть просто, но я не понимаю, скорее всего, я смотрел на вещи слишком долго без перерыва, но я мог бы использовать другой взгляд на это.Я пытаюсь создать счетчик, который отслеживает количество сделанных фотографий GameManager.CurrentStep, а затем отключает кнопку «Фото» после достижения общего количества фотографий GameManager.instance.driftNumSteps.По некоторым причинам есть дополнительный в конце, например.если общее количество шагов равно 6, камера не отключается и показывает GameManager.instance.driftInstructionText.text = "Drift Completed!!"; до седьмого шага.

    public void CapturePhoto(float latitude, float longitude)
    {
        // If all photos have been taken
        if (GameManager.CurrentStep <= GameManager.instance.driftNumSteps - 1)
        {
            // When a photo gets taken increment by 1
            GameManager.CurrentStep++;
            // Get the next drift step
            EventManager.GetDriftStep(GameManager.CurrentStep);
            // Insert photo data into SQL record
            GetComponent<SQLiteActions>().InsertPhotoData(GameManager.CurrentDriftID, "texture path", 78.33f, 87.1765f);

            /*if (PhoneCamera.backCam != null)
            {
                Texture2D photo = new Texture2D(PhoneCamera.backCam.width, PhoneCamera.backCam.height);
                photo.SetPixels(PhoneCamera.backCam.GetPixels());
                photo.Apply();

                SavePhotoToCameraRoll(photo);       // Save photo to camera roll gallery
                //SavePhotoToLocalStorage(photo);   // Save photo to local app storage

                Debug.Log("Photo Captured!");
            }
            else
            {
                Debug.Log("Phone Camera Not Found!");
            }*/
        }
        else
        {
            // Tell user their drift is done!
            GameManager.instance.driftInstructionText.text = "Drift Completed!!";
            // Fade camera button maybe?
            Debug.Log("Drift is complete!!");
            UIActions.EnableButton(GameManager.instance.newDriftBtn); // Enable create new drift button
            UIActions.DisableButton(GameManager.instance.takePhotoBtn); // Disable photo button button
        }

        Debug.Log(GameManager.CurrentStep + " out of " + GameManager.instance.driftNumSteps + " steps.");
    }

1 Ответ

0 голосов
/ 01 июня 2018

Спасибо за отзыв!Я решил проблему.Я получал из списка на 1, а не ноль.Как только я скорректировал свое возвращение, чтобы вернуть GameManager.Drift [currentStep - 1] .DriftStep;все работало нормально.

...