示例#1
0
        private static Sprite getImage(int spriteId, Archive streamLoader, String spriteName)
        {
            long spriteHash = (TextClass.spriteNameToHash(spriteName) << 8) + spriteId;

            if (spriteCache.ContainsKey(spriteHash))
            {
                return(spriteCache[spriteHash]);
            }

            try
            {
                if (indexStream == null)
                {
                    indexStream = new Default317Buffer(streamLoader.decompressFile("index.dat"));
                }

                Sprite sprite = new Sprite(streamLoader, spriteName, spriteId, indexStream);
                spriteCache.Add(spriteHash, sprite);

                return(sprite);
            }
            catch (Exception _ex)
            {
                throw;
            }
        }
示例#2
0
        private static Sprite getImage(int spriteId, Archive streamLoader, String spriteName)
        {
            long   spriteHash = (TextClass.spriteNameToHash(spriteName) << 8) + spriteId;
            Sprite sprite     = (Sprite)spriteCache.get(spriteHash);

            if (sprite != null)
            {
                return(sprite);
            }
            try
            {
                sprite = new Sprite(streamLoader, spriteName, spriteId);
                spriteCache.put(sprite, spriteHash);
            }
            catch (Exception _ex)
            {
                throw;
            }

            return(sprite);
        }