コード例 #1
0
        public static List <U.AddrResult> MakeListByUseTerrain(uint terrainid)
        {
            List <U.AddrResult> ret = new List <U.AddrResult>();

            InputFormRef InputFormRef     = Init(null);
            var          terrain_set_list = U.DictionaryToValuesList(InputFormRef.GetTerrainSetDic());

            uint[] pointers = GetPointers();
            for (int i = 0; i < pointers.Length; i++)
            {
                if (i >= terrain_set_list.Count)
                {
                    break;
                }
                if (pointers[i] == 0)
                {
                    continue;
                }
                InputFormRef.ReInitPointer(pointers[i]);
                List <U.AddrResult> a = InputFormRef.MakeList((uint addr) =>
                {
                    uint icon = Program.ROM.u8(addr + 0);
                    icon      = icon - 1;
                    return(icon == terrainid);
                });
                string name = U.ToHexString(i) + ":" + terrain_set_list[i];
                InputFormRef.AppendNameString(a, "", name);

                ret.AddRange(a);
            }
            return(ret);
        }