コード例 #1
0
 void LevelCompleteCallback(LevelCore level)
 {
     if (level.IsLast)
     {
         Complete();
     }
 }
コード例 #2
0
        public virtual void Set(LevelCore data, int index)
        {
            Level = data;

            label.text = (index + 1).ToString();

            UpdateState();
        }
コード例 #3
0
        public virtual void For(LevelCore level)
        {
            for (int i = 0; i < Elements.Count; i++)
            {
                Elements[i].Interactable = level.UnlockedOn(Elements[i].Difficulty);
            }

            Show();
        }
コード例 #4
0
        public virtual void Load(LevelCore level, RegionDifficulty difficulty)
        {
            if (Contains(level) == false)
            {
                throw new ArgumentException("Trying to load " + level.name + " But it's not a part of the " + name + " Region");
            }

            World.Load(level, difficulty);
        }
コード例 #5
0
        protected virtual LevelUITemplate Create(LevelCore level, int index)
        {
            var instance = Instantiate(template, transform);

            var script = instance.GetComponent <LevelUITemplate>();

            script.Init();
            script.Set(level, index);
            script.OnClick += TemplateClickedCallback;

            return(script);
        }
コード例 #6
0
        public int IndexOf(LevelCore level)
        {
            for (int i = 0; i < levels.Length; i++)
            {
                if (levels[i] == level)
                {
                    return(i);
                }
            }

            throw new ArgumentException();
        }
コード例 #7
0
 public virtual void Request(LevelCore level, float time)
 {
     Request(level, level.Region.Progress.Difficulty, time);
 }
コード例 #8
0
 public virtual void Request(LevelCore level, RegionDifficulty difficulty, float time)
 {
     Request(level.Region.name, level.Index, difficulty.ID, time);
 }
コード例 #9
0
        public virtual void Load(LevelCore level, RegionDifficulty difficulty)
        {
            Current = new SelectionData(level, difficulty);

            Scenes.Load.All(level.Scene, Scenes.Level);
        }
コード例 #10
0
 public virtual void Load(LevelCore level) => Load(level, level.Region.Progress.Difficulty);
コード例 #11
0
 public SelectionData(LevelCore level, RegionDifficulty difficulty) : this()
 {
     this.Level      = level;
     this.Difficulty = difficulty;
 }
コード例 #12
0
        void OnLevelSelected(LevelCore level)
        {
            Selection.Level = level;

            Difficulty.For(level);
        }
コード例 #13
0
 public virtual void Load(LevelCore level)
 {
     Load(level, progress.Difficulty);
 }
コード例 #14
0
        public virtual void Unlock(LevelCore level)
        {
            Unlocked = true;

            progress.Count = level.Index;
        }
コード例 #15
0
 public virtual bool Contains(LevelCore level)
 {
     return(levels.Contains(level));
 }
コード例 #16
0
 public virtual void Set(LevelCore reference) => Level = reference;