Ejemplo n.º 1
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            uint id   = (uint)value;
            Info info = Info.Instance();

            return(info.Search(info.Items, id)?.Name);
        }
Ejemplo n.º 2
0
 private void CreateItemList(String filter)
 {
     ListBoxItem.Items.Clear();
     foreach (var item in Info.Instance().Items)
     {
         if (String.IsNullOrEmpty(filter) || item.Name.IndexOf(filter) >= 0)
         {
             ListBoxItem.Items.Add(item);
         }
     }
 }
Ejemplo n.º 3
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            uint id    = (uint)value;
            uint index = 0;

            for (uint i = 0; i < Info.Instance().Monsters.Count; i++)
            {
                MonsterInfo info = Info.Instance().Monsters[(int)i];
                if (!info.Stamp)
                {
                    continue;
                }
                if (id == info.ID)
                {
                    return(index);
                }
                index++;
            }
            return(-1);
        }
Ejemplo n.º 4
0
        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            int index = (int)value;
            int count = 0;

            for (uint i = 0; i < Info.Instance().Monsters.Count; i++)
            {
                MonsterInfo info = Info.Instance().Monsters[(int)i];
                if (!info.Stamp)
                {
                    continue;
                }
                if (index == count)
                {
                    return(info.ID);
                }
                count++;
            }
            return(0);
        }
Ejemplo n.º 5
0
        public Charactor(uint address)
        {
            mAddress = address;
            for (uint i = 0; i < 12; i++)
            {
                Items.Add(new CharactorItem(address + 0x0180 + i * 4));
            }

            foreach (var magic in Info.Instance().Magics)
            {
                BattleMagics.Add(new CharactorOption(address + 0x00E0, magic.Value)
                {
                    Name = magic.Name
                });
                FieldMagics.Add(new CharactorOption(address + 0x0100, magic.Value)
                {
                    Name = magic.Name
                });
            }

            foreach (var skill in Info.Instance().Skills)
            {
                Skills.Add(new CharactorOption(address + 0x00EA, skill.Value)
                {
                    Name = skill.Name
                });
            }

            foreach (var job in Info.Instance().Jobs)
            {
                if (job.ID == 0)
                {
                    continue;
                }
                Jobs.Add(new CharactorJob(address + job.Lv, address + job.Exp)
                {
                    Name = job.Name
                });
            }
        }
Ejemplo n.º 6
0
        public DataContext()
        {
            for (uint i = 0; i < 6; i++)
            {
                Charactors.Add(new Charactor(0x0C80 + i * 0x01EC));
            }

            BagItem item = null;

            for (uint i = Util.BagItemCount - 1; (int)i >= 0; i--)
            {
                item = new BagItem(0x0544 + i * 2, 0x09D4 + i, item);
                item.PropertyChanged += Item_PropertyChanged;
                Bag.Insert(0, item);
            }

            foreach (var place in Info.Instance().Places)
            {
                Places.Add(new Place(place.Value)
                {
                    Name = place.Name
                });
            }

            foreach (var monster in Info.Instance().Monsters)
            {
                if (monster.ID != 0)
                {
                    Monsters.Add(new MonsterBook(0x1854 + (monster.ID - 1) * 8)
                    {
                        Name = monster.Name
                    });
                }
                if (monster.Passing)
                {
                    PassingSlateMonsters.Add(monster);
                }
                if (monster.Stamp)
                {
                    StampMonsters.Add(monster);
                }
            }

            for (uint i = 0; i < Util.MonsterStampCount; i++)
            {
                MonsterStamps.Add(new MonsterStamp(0x2E06 + i * 2));
            }

            foreach (var place in Info.Instance().ParkPlaces)
            {
                MonsterParkPlaces.Add(new MonsterParkPlace(0x00AC, place.Value)
                {
                    Name = place.Name
                });
            }

            for (uint i = 0; i < Util.MonsterParkDormitoryCount; i++)
            {
                MonsterParkDormitorys.Add(new MonsterParkDormitory(0x04BC + i * 4, 0x3180 + i));
            }

            for (uint i = 0; i < Util.PartyMemberCount; i++)
            {
                Party.Add(new PartyMember(0x0510 + i * 4));
            }

            for (uint i = 0; i < Util.PassingSlateCount; i++)
            {
                uint address = 0x32D0 + i * 44;
                if (SaveData.Instance().ReadNumber(address, 1) == 0)
                {
                    break;
                }
                PassingSlates.Add(new PassingSlate(address));
            }

            foreach (var monster in Info.Instance().TownMonsters)
            {
                TownMonsters.Add(new TownMonster(0x01E9, monster.Value)
                {
                    Name = monster.Name
                });
            }
        }