if (si.isHFliped()) { hFlip(); }
        public Sprite(SpriteInfo si, HackModule hm)        {            this.hm = hm;            if (pals == null)            {                pals = new Color[8][];                for (int i = 0; i < 8; i++)                {                    pals[i] = getSpriteRGB(i, hm.rom);                }            }            this.si = si;            this.palette = pals[si.getPalette()];            int offset = 0;            sprite = new byte[si.width * 8][si.height * 8];            for (int a = 0; a < si.height; a++)            {                for (int i = 0; i < si.width; i++)                {                    hm.read4BPPArea(sprite, si.address + offset, i * 8, a * 8);                    offset += 32;                }            }        }