コード例 #1
0
        public void detach(BaseSprite sprite)
        {
            //this.Remove(sName, index);
            SpriteBatchNode curr = (SpriteBatchNode)this.activeHead;

            while (curr != null)
            {
                if (curr.getSprite() == sprite)
                {
                    break;
                }

                curr = (SpriteBatchNode)curr.next;
            }

            if (this.activeHead == curr && curr != null)
            {
                activeHead = activeHead.next;
                if (activeHead != null)
                {
                    activeHead.prev = null;
                }
            }
            else if(curr != null)
            {
                curr.prev.next = curr.next;

                if (curr.next != null)
                {
                    curr.next.prev = curr.prev;
                }
            }
        }
コード例 #2
0
 public void set(BaseSprite spr)
 {
     this.sprite = spr;
     Debug.Assert(sprite != null);
     this.name = (SpriteEnum)spr.getName();
     this.index = spr.getIndex();
 }
コード例 #3
0
        public static void attachToGroup(BaseSprite spr, BatchGroup.BatchType bName, Index sprIndex = Index.Index_Null, Index batchIndex = Index.Index_Null)
        {
            BatchGroup group = find(bName, batchIndex);
            Debug.Assert(group != null);

            group.attach(spr);
        }
コード例 #4
0
 public void attach(BaseSprite spr)
 {
     SpriteBatchNode toAdd = (SpriteBatchNode)this.Add();
     toAdd.set(spr);
     spr.setBatch(this);
 }