public override void Push(FModuleInfo item)
 {
     item.Process = _process;
     // build base address map
     if (item.BaseAddress != 0)
     {
         _mapAddress.Set(item.BaseAddress, item);
     }
     // Push
     base.Push(item);
 }
 //============================================================
 // <T>向类索引Map表中加入节点 。</T>
 //
 // @param node 需要加入的节点信息
 //============================================================
 public void AddNode(FMapNode node)
 {
     if (_classesMap.Contains(node.ClassStr))
     {
         _classesMap[node.ClassStr].Add(node.ArrayStr);
     }
     else
     {
         FArray <string> arrNode = new FArray <string>();
         arrNode.Add(node.ArrayStr);
         _classesMap.Set(node.ClassStr, arrNode);
     }
 }
Exemple #3
0
        //============================================================
        // <T>绘制出生点。</T>
        //============================================================
        public void DrawBirths()
        {
            FObjects <FMbMapBirth> births = _map.Births;

            if (!births.IsEmpty())
            {
                int count = births.Count;
                for (int n = 0; n < count; n++)
                {
                    FMbMapBirth birth    = births[n];
                    SIntPoint2  location = birth.Location;
                    // 获取敌机集合
                    FObjects <FMbMapBirthEnemy> enemys = birth.BirthEnemys;
                    int enemyCount = enemys.Count;
                    for (int x = 0; x < enemyCount; x++)
                    {
                        FMbMapBirthEnemy birthEnemy = enemys[x];
                        int         templateId      = birthEnemy.TemplateId;
                        FMbTplEnemy enemy           = RMobileManager.TemplateConsole.EnemyConsole.FingById(templateId);
                        int         resourceRid     = enemy.ResourceRid;
                        // 获取资源图片
                        FRsResourcePicture resource    = RContent2dManager.ResourceConsole.FindOpen(resourceRid) as FRsResourcePicture;
                        Bitmap             resourceMap = resource.Bitmap.Native;
                        // 创建绘制对象
                        FDxBitmap bitmap = null;
                        if (!_dxBitmapSet.Contains(resourceRid.ToString()))
                        {
                            bitmap = _context.Device.CreateBitmap(resourceMap);
                            _dxBitmapSet.Set(resourceRid.ToString(), bitmap);
                        }
                        else
                        {
                            bitmap = _dxBitmapSet.Get(resourceRid.ToString());
                        }
                        _context.DrawBitmap(bitmap, location.X - _location.X, location.Y - _location.Y);
                    }
                }
            }
        }
 //============================================================
 // <T>向MAP表里面加入节点。</T>
 //
 // @param node 需要加工的节点
 // @param dotHFilePath H文件的路径
 //============================================================
 public void AddNode(FMapNode node, string dotHFilePath)
 {
     if (_classesMap.Names.Contains(node.FileDotH))
     {
         _classesMap[node.FileDotH].Add(node.ClassStr);
     }
     else
     {
         FArray <string> arrNode = new FArray <string>();
         arrNode.Add(dotHFilePath);
         arrNode.Add(node.ClassStr);
         _classesMap.Set(node.FileDotH, arrNode);
     }
 }