public static boolean cantMakeACompleteRobot() {
    int i = GameApplet.thisApplet.getGameState().getPolymetals();
    int j = GameApplet.thisApplet.getGameState().getEnergyUnits();
    Robot localRobot = GameApplet.thisApplet.getBuildPanel().getRobotOnRamp();
    if (localRobot != null)
    {
      i += 20;
      j += 45;
      RobotPart[] localObject = localRobot.getRobotParts();
      for (int k = 0; k < localObject.length; k++)
      {
        j += localObject[k].getEnergyCost();
        i += localObject[k].getSalvageCost();
      }
    }
    Object localObject = new GrabberArm();
    int k = 999; int m = 999;
    Enumeration localEnumeration = GameApplet.thisApplet.getGameState().getRobotPartPatterns().elements();
    while (localEnumeration.hasMoreElements())
    {
      RobotPart localRobotPart = (RobotPart)localEnumeration.nextElement();
      if ((!(localRobotPart instanceof Chassis)) || 
        (localRobotPart.getSecurityLevel() > GameApplet.thisApplet.getGameState().getSecurityLevel()))
        continue;
      if ((localRobotPart.getEnergyCost() > m) || (localRobotPart.getSalvageCost() > k))
        continue;
      m = localRobotPart.getEnergyCost();
      k = localRobotPart.getSalvageCost();
    }

    return (i < 20 + ((GrabberArm)localObject).getSalvageCost() + k) || 
      (j < 45 + ((GrabberArm)localObject).getEnergyCost() + m);
  }