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

WorldCursor.cs

Blame
  • FactSpawner.cs 15.36 KiB
    using System.Collections;
    using System.Collections.Generic;
    using System.Drawing;
    using System.Linq;
    using TMPro;
    using Unity.Mathematics;
    using UnityEngine;
    using UnityEngine.ProBuilder.Shapes;
    using static CommunicationEvents;
    
    public class FactSpawner : MonoBehaviour
    {
        public GameObject
            TestPoint,
            Line,
            Ray,
            Angle,
            Ring,
            Prism,
            Cone,
            Rectangle,
            Circle,
            SimpleCircle,
            Triangle,
            Sphere,
            ActualSphere
            ;
    
        private void OnEnable()
        {
            AddFactEvent.AddListener(SpawnFactRepresentation);
            AnimateNonExistingFactEvent.AddListener(AnimateNonExistingFactTrigger);
            StartT0Event.AddListener(AnimateFunctionCalls);
        }
    
        private void OnDisable()
        {
            AddFactEvent.RemoveListener(SpawnFactRepresentation);
            AnimateNonExistingFactEvent.RemoveListener(AnimateNonExistingFactTrigger);
            StartT0Event.RemoveListener(AnimateFunctionCalls);
        }
    
        public void SpawnFactRepresentation(Fact fact)
        {
            switch (fact)
            {
                case PointFact PointFact:
                    SpawnPoint(PointFact); break;
                case TestPointFact TestPointFact:
                    SpawnTestPoint(TestPointFact); break;
                case LineFact LineFact:
                    SpawnLine(LineFact); break;
                //case RightAngleFact AngleFact: //needed for Hint System
                case AbstractAngleFact AngleFact:
                    SpawnAngle(AngleFact); break;
                case RayFact RayFact:
                    SpawnRay(RayFact); break;
                case CircleFact CircleFact:
                    SpawnRingAndCircle(CircleFact); break;
                case QuadFact QuadFact:
                    SpawnQuad(QuadFact); break;
                case TriangleFact TrisFact:
                    SpawnTris(TrisFact); break;
                case ConeVolumeFact ConeVolumeFact:
                    SpawnCone(ConeVolumeFact); break;
                case TruncatedConeVolumeFact TruncatedConeVolumeFact:
                    SpawnTruncatedCone(TruncatedConeVolumeFact); break;
                case RectangleFact rectangleFact:
                    SpawnRectangle(rectangleFact); break;
                case SimpleCircleFact simpleCircleFact: