示例#1
0
        protected void SetRegionBlockingFlags(ushort rawData)
        {
            RegionBlockingFlags flags = (RegionBlockingFlags)((rawData & 0x780) >> 7);

            BlockedInJapan      = flags.HasFlag(RegionBlockingFlags.Japan);
            BlockedInUSA        = flags.HasFlag(RegionBlockingFlags.USA);
            BlockedInPALFIGS    = flags.HasFlag(RegionBlockingFlags.PALFIGS);
            BlockedInPALEnglish = flags.HasFlag(RegionBlockingFlags.PALEnglish);
        }
示例#2
0
        public ushort GetColourCountAndRegionBlockingFlags()
        {
            RegionBlockingFlags flags = RegionBlockingFlags.None;

            if (BlockedInJapan)
            {
                flags |= RegionBlockingFlags.Japan;
            }
            if (BlockedInUSA)
            {
                flags |= RegionBlockingFlags.USA;
            }
            if (BlockedInPALFIGS)
            {
                flags |= RegionBlockingFlags.PALFIGS;
            }
            if (BlockedInPALEnglish)
            {
                flags |= RegionBlockingFlags.PALEnglish;
            }

            return((ushort)(((((ushort)flags) << 7) & 0x780) | ((Colours.Count - 1) << 2) & 0x3C));
        }