Пример #1
0
        public Area CreateArea(Vector3 pos, Vector3 rot, float fWidth, float fHeight, float fDepth, int iLife, Color c)
        {
            Area newArea = new Area();
            if (newArea.Init(pos, rot, fWidth, fHeight, fDepth, iLife, c))
            {
                m_Areas.Add(newArea);

                return newArea;
            }

            return null;
        }
Пример #2
0
        public bool Init(Circuit c, string model_name, Vector3 pos, Vector3 rot, bool reversed, int iIndex)
        {
            bool bInitOk = true;

            if (model_name != null)
            {
                bInitOk = Load(model_name);
            }

            if (bInitOk)
            {
                m_vPosition = pos;
                m_vRotation = rot;
                m_iIndex = iIndex;
                m_Circuit = c;

                m_vDirection = reversed ? -1 * GetForward() : GetForward();

                m_Area = CollisionManager.GetInstance().CreateArea(pos, rot, 10000, 1000, 100, -1, m_iIndex == 0? Color.Green : Color.Red);

                bInitOk = m_Area != null;

                if (bInitOk)
                    m_Area.RegisterObserver(this);
            }

            return bInitOk;
        }