Skip to content
Snippets Groups Projects
Select Git revision
  • 927f3451fc1c0dd8847d5d503a876bbb964f70f6
  • main default
  • master
  • tempAndrToMaster
4 results

ToolmodeSelector_bttn_mobile.cs

Blame
  • ScrollDetails.cs 10.54 KiB
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using TMPro;
    using UnityEngine.Networking;
    using Newtonsoft.Json;
    using static CommunicationEvents;
    
    public class ScrollDetails : MonoBehaviour
    {
        public WorldCursor cursor;
        public GameObject parameterDisplayPrefab;
        public Scroll scroll;
    
        public int x_Start;
        public int y_Start;
        public int y_Paece_Between_Items;
    
        public static List<GameObject> ParameterDisplays;
        private static List<Scroll.ScrollAssignment> LatestCompletions;
        private static List<Fact> LatestRenderedHints;
    
        public string currentMmtAnswer;
    
        public Vector3 GetPosition(int i)
        {
            return new Vector3(x_Start, y_Start + i * (-y_Paece_Between_Items), 0f);
        }
    
        // Start is called before the first frame update
        void Start()
        {
            if (cursor == null) cursor = GameObject.FindObjectOfType<WorldCursor>();
    
            parameterDisplayHint.AddListener(animateScrollParameter);
            ScrollFactHintEvent.AddListener(animateHint);
            NewAssignmentEvent.AddListener(newAssignmentTrigger);
        }
    
        public void setScroll(Scroll s)
        {
            Transform originalScroll = gameObject.transform.GetChild(1).transform;
            Transform originalScrollView = originalScroll.GetChild(1);
            Transform originalViewport = originalScrollView.GetChild(0);
            this.scroll = s;
            originalScroll.GetChild(0).GetComponent<TextMeshProUGUI>().text = s.description;
    
            //Clear all current ScrollFacts
            for (int i = 0; i < originalViewport.GetChild(0).childCount; i++) {
                GameObject.Destroy(originalViewport.GetChild(0).transform.GetChild(i).gameObject);
            }
    
            ParameterDisplays = new List<GameObject>();
            for (int i = 0; i < s.requiredFacts.Count; i++)
            {
                var originalObj = Instantiate(parameterDisplayPrefab, Vector3.zero, Quaternion.identity, transform);
                var originalScrollFact = originalObj.transform.GetChild(0).GetComponent<RenderedScrollFact>();
                originalScrollFact.ID = i;
                originalScrollFact.Label = s.requiredFacts[i].label;
                originalScrollFact.factUri = s.requiredFacts[i].@ref.uri;
    
                originalObj.transform.SetParent(originalViewport.GetChild(0));
    
                ParameterDisplays.Add(originalObj);
            }
        }
    
        public void magicButtonTrigger() {
            StartCoroutine(magicButton());
        }