Skip to content
Snippets Groups Projects
Level.cs 1.06 KiB
Newer Older
  • Learn to ignore specific revisions
  • using System.Collections.Generic;
    using UnityEngine;
    
    using static CommunicationEvents;
    
    Richard Marcus's avatar
    Richard Marcus committed
    
    //TODO: think about having one Level class and then different subclasses like TreeLevel, Tangenslevel?
    public class Level : MonoBehaviour
    {
        void Start()
    
        // Start is called before the first frame update
    
    Richard Marcus's avatar
    Richard Marcus committed
        {
    
    Richard Marcus's avatar
    Richard Marcus committed
    
        public static bool gameSolved()
        {
    
                StageStatic.stage.factState.DynamiclySolved(StageStatic.stage.solution.getMasterFactsByIndex(0), out _, out List<Fact> hits, FactComparer: StageStatic.stage.solution.ValidationSet[0].Comparer);
    
            bool solvedEXP =
    
                StageStatic.stage.factState.DynamiclySolvedEXP(StageStatic.stage.solution, out _, out List<List<string>> hitsEXP);
    
    Richard Marcus's avatar
    Richard Marcus committed
    
    
            if (solved)
                foreach (var hit in hits)
                    AnimateExistingFactEvent.Invoke(hit);
    
    
            if (solvedEXP)
                foreach (var hitlist in hitsEXP)
                    foreach(var hit in hitlist)
    
                        AnimateExistingFactEvent.Invoke(StageStatic.stage.factState[hit]);
    
    Richard Marcus's avatar
    Richard Marcus committed
        }
    }