コード例 #1
0
        public void Update()
        {
            GameObjectRef pNode = (GameObjectRef)BaseGetActive();

            while (pNode != null)
            {
                if (pNode.GetGameObject() != null)
                {
                    // Update the node
                    pNode.GetGameObject().Update();
                }
                pNode = (GameObjectRef)pNode.GetNext();
            }
        }
コード例 #2
0
        public GameObject Find(GameObject.Name name)
        {
            // Compare functions only compares two Nodes
            pGameObjectCompare.GetGameObject().SetName(name);

            GameObjectRef pNode = (GameObjectRef)BaseFind(pGameObjectCompare);

            if (pNode != null)
            {
                return(pNode.GetGameObject());
            }

            return(null);
        }
コード例 #3
0
        // Currently necessary for Detach() since GameObject.Name is not unique
        private Boolean HashCodeCompare(DLink pLinkA, DLink pLinkB)
        {
            Debug.Assert(pLinkA != null);
            Debug.Assert(pLinkB != null);

            GameObjectRef pDataA = (GameObjectRef)pLinkA;
            GameObjectRef pDataB = (GameObjectRef)pLinkB;

            Boolean status = false;

            if (pDataA.GetGameObject().GetHashCode() == pDataB.GetGameObject().GetHashCode())
            {
                status = true;
            }

            return(status);
        }
コード例 #4
0
        override protected Boolean DerivedCompare(DLink pLinkA, DLink pLinkB)
        {
            // This is used in baseFind()
            Debug.Assert(pLinkA != null);
            Debug.Assert(pLinkB != null);

            GameObjectRef pDataA = (GameObjectRef)pLinkA;
            GameObjectRef pDataB = (GameObjectRef)pLinkB;

            Boolean status = false;

            if (pDataA.GetGameObject().GetName() == pDataB.GetGameObject().GetName())
            {
                status = true;
            }

            return(status);
        }