Exemplo n.º 1
0
 private static bool StillValid(FloatMenuOption opt, List <FloatMenuOption> curOpts)
 {
     if (opt.revalidateWorldClickTarget == null)
     {
         for (int i = 0; i < curOpts.Count; i++)
         {
             if (FloatMenuWorld.OptionsMatch(opt, curOpts[i]))
             {
                 return(true);
             }
         }
     }
     else
     {
         if (!opt.revalidateWorldClickTarget.Spawned)
         {
             return(false);
         }
         Vector2 mousePos = opt.revalidateWorldClickTarget.ScreenPos();
         mousePos.y = (float)UI.screenHeight - mousePos.y;
         List <FloatMenuOption> list = FloatMenuMakerWorld.ChoicesAtFor(mousePos, (Caravan)Find.WorldSelector.SingleSelectedObject);
         for (int j = 0; j < list.Count; j++)
         {
             if (FloatMenuWorld.OptionsMatch(opt, list[j]))
             {
                 return(true);
             }
         }
     }
     return(false);
 }
Exemplo n.º 2
0
 private static bool StillValid(FloatMenuOption opt, List <FloatMenuOption> curOpts, Caravan forCaravan, ref List <FloatMenuOption> cachedChoices, ref Vector2 cachedChoicesForPos)
 {
     if (opt.revalidateWorldClickTarget == null)
     {
         for (int i = 0; i < curOpts.Count; i++)
         {
             if (FloatMenuWorld.OptionsMatch(opt, curOpts[i]))
             {
                 return(true);
             }
         }
     }
     else
     {
         if (!opt.revalidateWorldClickTarget.Spawned)
         {
             return(false);
         }
         Vector2 vector = opt.revalidateWorldClickTarget.ScreenPos();
         vector.y = (float)UI.screenHeight - vector.y;
         List <FloatMenuOption> list;
         if (vector == cachedChoicesForPos)
         {
             list = cachedChoices;
         }
         else
         {
             cachedChoices       = FloatMenuMakerWorld.ChoicesAtFor(vector, forCaravan);
             cachedChoicesForPos = vector;
             list = cachedChoices;
         }
         for (int j = 0; j < list.Count; j++)
         {
             if (FloatMenuWorld.OptionsMatch(opt, list[j]))
             {
                 return(!list[j].Disabled);
             }
         }
     }
     return(false);
 }