// ---------------------------------------------------------------------
        //
        // Internal
        //
        // ---------------------------------------------------------------------

        public void Internal_AddIsoObject(IsoObject iso_object)
        {
            if (iso_object && iso_object.IsActive())
            {
                _isoObjects.Add(iso_object);
                OnAddIsoObjectToWorld(iso_object);
            }
        }
Пример #2
0
        // ---------------------------------------------------------------------
        //
        // Parents
        //
        // ---------------------------------------------------------------------

        void RegisterIsoObjectParent(IsoObject iso_object)
        {
            var parent = iso_object ? iso_object.transform.parent : null;

            if (parent)
            {
                ParentInfo parent_info;
                if (_parentToParentInfo.TryGetValue(parent, out parent_info))
                {
                    parent_info.IsoObjects.Add(iso_object);
                }
                else
                {
                    parent_info = _parentInfoPool.Take().Init(parent);
                    parent_info.IsoObjects.Add(iso_object);
                    _parentToParentInfo.Add(parent, parent_info);
                    _parentInfoList.Add(parent_info);
                }
                _isoObjectToParent.Add(iso_object, parent);
            }
        }
Пример #3
0
        // ---------------------------------------------------------------------
        //
        // Overrides
        //
        // ---------------------------------------------------------------------

        public override void OnAddIsoObject(IsoObject iso_object)
        {
            _isoObjects.Add(iso_object);
        }