Esempio n. 1
0
 private void ReadyTag(GameObjectTag Tag)
 {
     if (TagsReady)
     {
         if (Tags.Contains(Tag))
         {
             if (ParentScene != null && ParentScene.Tags.Contains(Tag))
             {
                 LinkedList <GameObject> l = ParentScene.GetList(Tag);
                 if (l != null && !l.Contains(this))
                 {
                     l.AddFirst(this);
                     if (Tag == GameObjectTag.WorldViewer)
                     {
                         ParentScene.UpdateViews();
                     }
                 }
             }
         }
         else
         {
             if (ParentScene != null && ParentScene.Tags.Contains(Tag))
             {
                 LinkedList <GameObject> l = ParentScene.GetList(Tag);
                 if (l != null && l.Contains(this))
                 {
                     l.Remove(this);
                     if (Tag == GameObjectTag.WorldViewer)
                     {
                         ParentScene.UpdateViews();
                     }
                 }
             }
         }
     }
     else
     {
         ParentScene.NeedsToReadyTags = true;
         if (!ParentScene.ObjectsToReadyTags.Contains(this))
         {
             ParentScene.ObjectsToReadyTags.AddLast(this);
         }
     }
 }