public static bool cb(CSVReader csv_reader, EnemyPopTableData data, ref uint key)
        {
            data.mapID = key;
            csv_reader.Pop(ref data.popX);
            csv_reader.Pop(ref data.popZ);
            csv_reader.Pop(ref data.popRadius);
            csv_reader.Pop(ref data.enemyID);
            csv_reader.Pop(ref data.enemyLv);
            csv_reader.Pop(ref data.popNumMin);
            csv_reader.Pop(ref data.popNumMax);
            csv_reader.Pop(ref data.popNumInit);
            csv_reader.Pop(ref data.popNumTotal);
            csv_reader.Pop(ref data.popTimeMin);
            csv_reader.Pop(ref data.popTimeMax);
            csv_reader.Pop(ref data.bossFlag);
            csv_reader.Pop(ref data.autoActivate);
            float value = 0f;

            csv_reader.Pop(ref value);
            data.scoutingParam.scountigRangeSqr = value * value;
            csv_reader.Pop(ref value);
            data.scoutingParam.scoutingSightCos = Mathf.Cos(0.0174532924f * value);
            csv_reader.Pop(ref value);
            data.scoutingParam.scoutingAudibilitySqr = value * value;
            csv_reader.PopEnum(ref data.enemyPopType, ENEMY_POP_TYPE.NONE);
            csv_reader.Pop(ref data.escapeTime);
            return(true);
        }
    public List <EnemyPopTableData> GetRareOrBossEnemyList(int map_id)
    {
        if (!Singleton <FieldMapTable> .IsValid())
        {
            return(null);
        }
        List <EnemyPopTableData> list  = enemyPopTable.Get((uint)map_id);
        List <EnemyPopTableData> list2 = new List <EnemyPopTableData>();
        int i = 0;

        for (int count = list.Count; i < count; i++)
        {
            EnemyPopTableData enemyPopTableData = list[i];
            if (enemyPopTableData.enemyPopType != 0)
            {
                list2.Add(list[i]);
            }
        }
        return(list2);
    }