예제 #1
0
    private void CreateButtons(bool load)
    {
        GameObject  saveState;
        UnityAction OnClickDo;

        for (int i = 0; i < saveStateNumber; i++)
        {
            saveState = Instantiate(saveButtonPrefab, saveParent);
            int btnNmbr = i;

            if (load)
            {
                if (!File.Exists(Path.Combine(Application.persistentDataPath, "Save_" + i)))
                {
                    saveState.GetComponent <Button>().interactable = false;
                }
                OnClickDo = delegate
                {
                    GameManager.Instance.LoadProgression(btnNmbr);
                    UiAnim.SetTrigger("Load");
                    UiAnim.SetTrigger("Start");
                };
                back.onClick.AddListener(delegate { UiAnim.SetTrigger("Load"); });
            }
            else
            {
                OnClickDo = delegate { GameManager.Instance.SaveProgression(btnNmbr);
                                       UiAnim.SetTrigger("Save"); };
                back.onClick.AddListener(delegate { UiAnim.SetTrigger("Save"); });
            }

            if (File.Exists(Path.Combine(Application.persistentDataPath, "Save_" + i + ".png")))
            {
                Sprite sprite = ScreenshotHandler.GetSpriteFromFile(Path.Combine(Application.persistentDataPath, "Save_" + i + ".png"));
                saveState.GetComponent <Image>().sprite = sprite;
            }


            saveState.GetComponent <Button>().onClick.AddListener(OnClickDo);
        }
    }