示例#1
0
 public Component.GComponent FindComponentRecursion(GActor.FOnVisitComponent visitor)
 {
     if (visitor == null)
     {
         return(null);
     }
     for (int i = 0; i < Components.Count; ++i)
     {
         var comp = Components[i];
         if (visitor(comp) == true)
         {
             return(comp);
         }
         var container = comp as Component.GComponentsContainer;
         if (container != null)
         {
             var childCom = container.FindComponentRecursion(visitor);
             if (childCom != null)
             {
                 return(childCom);
             }
             continue;
         }
     }
     return(null);
 }
示例#2
0
 public Component.GComponent FindComponent(GActor.FOnVisitComponent visitor)
 {
     if (visitor == null)
     {
         return(null);
     }
     for (int i = 0; i < Components.Count; ++i)
     {
         var comp = Components[i];
         if (visitor(comp) == true)
         {
             return(comp);
         }
     }
     return(null);
 }