If the first texture loaded was not in the pack, i.e. we fell back on system textures, then the pack was ignored altogether for the remainder of the render. Here we fix this by using an OrderedDict instead of the split jars and jarpath nonsense, and then always checking the custom textures first and opening them if they are not already open, and putting the jar file handle at the start of the OrderedDict. We also switch around some logic to avoid unnecessary isdir calls when we're using a resource pack.