Example #1
0
 // Update is called once per frame
 void Update()
 {
     if (!m_spawned) // TODO there is probably a better way to do init
     {
         m_visibility = m_tileMap.EnableVisibility();
         UpdateVision();
         m_spawned = true;
     }
 }
Example #2
0
 // Update is called once per frame
 void Update()
 {
     if (!m_spawned) // TODO there is probably a better way to do init
     {
         m_visibility = m_tileMap.EnableVisibility();
         UpdateVision();
         m_spawned = true;
     }
 }
Example #3
0
        // TODO this method can currently only be called from code, would be nice with gui checkbox
        // TODO returning the behiaviour like this doesnt feel pretty
        public TileMapVisibilityBehaviour EnableVisibility()
        {
            //if (m_visibility != null)
            //    throw new InvalidOperationException("Visibility already enabled");

            if (m_visibility == null)
            {
                var gameObject = new GameObject("TileMapVisibility", typeof(TileMapVisibilityBehaviour));
                gameObject.transform.parent        = transform;
                gameObject.transform.localRotation = Quaternion.identity;
                gameObject.transform.localPosition = new Vector3(0, -2f, transform.position.z - 1f); // place above tilemap
                gameObject.transform.localScale    = Vector3.one;

                m_visibility = gameObject.GetComponent <TileMapVisibilityBehaviour>();
            }
            return(m_visibility);
        }