Example #1
0
    void CalcPanExtents(SubLevelObject SubLevel)
    {
        float  vertExtent = Camera.main.camera.orthographicSize;
        float  horzExtent = vertExtent * Screen.width / Screen.height;
        Bounds mapExtents = SubLevel.GetBounds();

        print(mapExtents);

        // Calculations assume map is position at the origin
        m_MaxPan.xMin = mapExtents.min.x + horzExtent;
        m_MaxPan.xMax = mapExtents.max.x - horzExtent;
        m_MaxPan.yMin = mapExtents.min.y + vertExtent;
        m_MaxPan.yMax = mapExtents.max.y - vertExtent;
    }
Example #2
0
    // Update is called once per frame
    void Update()
    {
        Bounds curSubBounds = m_CurrentSubLevel.GetBounds();

        if (!curSubBounds.Contains(m_Player.transform.position))
        {
            SubLevelObject newSubLevel = FindSubLevel(m_Player.transform.position);
            m_CurrentSubLevel = newSubLevel;
            if (OnSubLevelChange != null)
            {
                OnSubLevelChange(m_CurrentSubLevel);
            }
        }
    }
Example #3
0
    SubLevelObject FindSubLevel(Vector3 Position)
    {
        SubLevelObject ret = null;

        foreach (var obj in GetComponentsInChildren <SubLevelObject>())
        {
            if (obj.GetBounds().Contains(Position))
            {
                ret = obj;
                break;
            }
        }
        return(ret);
    }
Example #4
0
 void SubLevelChange(SubLevelObject newSubLevel)
 {
     CalcPanExtents(newSubLevel);
 }
Example #5
0
 // Use this for initialization
 void Start()
 {
     m_Player          = GameObject.Find("Link").GetComponent <Link>();
     m_CurrentSubLevel = DefaultSubLevel;
 }