Example #1
0
        private void LoadScreen(ItemSeeker seeker, int mapY)
        {
            var data = new ItemScreenData();

            data.MapX = seeker.MapX;
            data.MapY = mapY;

            var item = LoadItem(seeker);

            if (item != null)
            {
                data.Items.Add(item);
            }

            while (seeker.MoreItemsPresent)
            {
                seeker.NextItem();
                item = LoadItem(seeker);
                if (item != null)
                {
                    data.Items.Add(item);
                }
            }

            Add(data);
        }
        private void DisassmScreen(ItemSeeker seeker)
        {
            result.AppendLine();
            result.AppendLine();

            // Byte, map X
            result.AppendLine(FormatLine(
                                  byteCode + " " + FormatByte(seeker.MapX),
                                  "Map X = " + seeker.MapX.ToString()));

            if (seeker.ScreenEntrySizeByte == 0xFF)
            {
                // Byte indicates last screen
                WriteLine(ByteDirective(0xFF), "Last screen in row");
            }
            else
            {
                // Byte, screen data size
                result.AppendLine(FormatLine(
                                      byteCode + " " + FormatByte(seeker.ScreenEntrySizeByte),
                                      seeker.ScreenEntrySize + " bytes of data for this screen"));
            }
            DisassmItem(seeker);
            while (seeker.MoreItemsPresent)
            {
                seeker.NextItem();
                DisassmItem(seeker);
            }

            WriteLine(ByteDirective(0), "End of screen data");
        }
Example #3
0
        public int GetRemainingItemsCount()
        {
            ItemSeeker i     = this;
            int        count = 1;

            while (i.MoreItemsPresent)
            {
                count++;
                i.NextItem();

                if (count >= 16)
                {
                    return(count);
                }
            }

            return(count);
        }