コード例 #1
0
        public void Create()
        {
            if (RoomManager.Instance.Floor == null)
            {
                return;
            }

            m_TransformOperators.Clear();
            m_LastTransformOperator = null;
            var transformOperator = Instantiate(TranformOperatorPrefab);

            transformOperator.transform.localScale *= 0.5f;
            transformOperator.AttachToTarget(RoomManager.Instance.Floor.transform, false, true, false, TransformPosition.Above);
            transformOperator.gameObject.SetActive(false);
            m_TransformOperators.Add(RoomManager.Instance.Floor.gameObject, transformOperator);

            foreach (var point in RoomManager.Instance.Floor.MeshPolygon.Points)
            {
                var transformOperatorPoint = Instantiate(TranformOperatorPrefab);
                transformOperatorPoint.AttachToTarget(point.transform, true, false, true, TransformPosition.Centered);
                transformOperatorPoint.gameObject.SetActive(false);
                m_TransformOperators.Add(point.gameObject, transformOperatorPoint);
            }
            m_Initialized = true;
        }
コード例 #2
0
        public void HideAll()
        {
            if (!m_Initialized)
            {
                return;
            }

            foreach (var transformOP in m_TransformOperators)
            {
                transformOP.Value.gameObject.SetActive(false);
                m_LastTransformOperator = null;
            }
        }
コード例 #3
0
        public void ChangeState(GameObject g)
        {
            if (!m_Initialized || g == null || !m_TransformOperators.ContainsKey(g))
            {
                return;
            }

            if (m_LastTransformOperator)
            {
                m_LastTransformOperator.gameObject.SetActive(false);
            }

            if (m_LastTransformOperator == m_TransformOperators[g])
            {
                m_LastTransformOperator = null;
                return;
            }

            m_TransformOperators[g].gameObject.SetActive(!m_TransformOperators[g].gameObject.activeSelf);
            m_LastTransformOperator = m_TransformOperators[g];
        }