// Token: 0x060002B3 RID: 691 RVA: 0x000157E0 File Offset: 0x000139E0
 public static void blendcurrBg(short id, Image img)
 {
     for (int i = 0; i < TileMap.vCurrItem.size(); i++)
     {
         BgItem bgItem = (BgItem)TileMap.vCurrItem.elementAt(i);
         if (bgItem.idImage == id && !bgItem.isNotBlend() && (int)bgItem.layer != 2 && (int)bgItem.layer != 4 && !BgItem.imgNew.containsKey(bgItem.idImage + "blend" + bgItem.layer))
         {
             sbyte[] array = Rms.loadRMS(string.Concat(new object[]
             {
                 "x",
                 mGraphics.zoomLevel,
                 "blend",
                 id,
                 "layer",
                 bgItem.layer
             }));
             if (array == null)
             {
                 BgItem.imgNew.put(bgItem.idImage + "blend" + bgItem.layer, BgItemMn.blendImage(img, (int)bgItem.layer, (int)bgItem.idImage));
             }
             else
             {
                 Image v = Image.createImage(array, 0, array.Length);
                 BgItem.imgNew.put(bgItem.idImage + "blend" + bgItem.layer, v);
             }
         }
     }
 }
 // Token: 0x060008B5 RID: 2229 RVA: 0x0007EAE0 File Offset: 0x0007CCE0
 public static BgItem getBIById(int id)
 {
     for (int i = 0; i < TileMap.vItemBg.size(); i++)
     {
         BgItem bgItem = (BgItem)TileMap.vItemBg.elementAt(i);
         if (bgItem.id == id)
         {
             return(bgItem);
         }
     }
     return(null);
 }
    // Token: 0x060008BB RID: 2235 RVA: 0x0007EBDC File Offset: 0x0007CDDC
    public static bool isExistMoreOne(int id)
    {
        if (id == 156 || id == 330 || id == 345 || id == 334)
        {
            return(false);
        }
        if (TileMap.mapID == 54 || TileMap.mapID == 55 || TileMap.mapID == 56 || TileMap.mapID == 57 || TileMap.mapID == 58 || TileMap.mapID == 59 || TileMap.mapID == 103)
        {
            return(false);
        }
        int num = 0;

        for (int i = 0; i < TileMap.vCurrItem.size(); i++)
        {
            BgItem bgItem = (BgItem)TileMap.vCurrItem.elementAt(i);
            if (bgItem.id == id)
            {
                num++;
            }
        }
        return(num > 2);
    }
    // Token: 0x0600061A RID: 1562 RVA: 0x0004B974 File Offset: 0x00049B74
    public override void paint(mGraphics g)
    {
        if (global::Char.isLoadingMap)
        {
            return;
        }
        GameCanvas.paintBGGameScr(g);
        g.translate(-GameScr.cmx, -GameScr.cmy);
        if (!GameCanvas.lowGraphic)
        {
            for (int i = 0; i < MapTemplate.vCurrItem[CreateCharScr.indexGender].size(); i++)
            {
                BgItem bgItem = (BgItem)MapTemplate.vCurrItem[CreateCharScr.indexGender].elementAt(i);
                if (bgItem.idImage != -1 && (int)bgItem.layer == 1)
                {
                    bgItem.paint(g);
                }
            }
        }
        TileMap.paintTilemap(g);
        int num = 30;

        if (GameCanvas.w == 128)
        {
            num = 20;
        }
        int num2 = CreateCharScr.hairID[CreateCharScr.indexGender][CreateCharScr.indexHair];
        int num3 = CreateCharScr.defaultLeg[CreateCharScr.indexGender];
        int num4 = CreateCharScr.defaultBody[CreateCharScr.indexGender];

        g.drawImage(TileMap.bong, this.cx, this.cy + this.dy, 3);
        Part part  = GameScr.parts[num2];
        Part part2 = GameScr.parts[num3];
        Part part3 = GameScr.parts[num4];

        SmallImage.drawSmallImage(g, (int)part.pi[global::Char.CharInfo[this.cf][0][0]].id, this.cx + global::Char.CharInfo[this.cf][0][1] + (int)part.pi[global::Char.CharInfo[this.cf][0][0]].dx, this.cy - global::Char.CharInfo[this.cf][0][2] + (int)part.pi[global::Char.CharInfo[this.cf][0][0]].dy + this.dy, 0, 0);
        SmallImage.drawSmallImage(g, (int)part2.pi[global::Char.CharInfo[this.cf][1][0]].id, this.cx + global::Char.CharInfo[this.cf][1][1] + (int)part2.pi[global::Char.CharInfo[this.cf][1][0]].dx, this.cy - global::Char.CharInfo[this.cf][1][2] + (int)part2.pi[global::Char.CharInfo[this.cf][1][0]].dy + this.dy, 0, 0);
        SmallImage.drawSmallImage(g, (int)part3.pi[global::Char.CharInfo[this.cf][2][0]].id, this.cx + global::Char.CharInfo[this.cf][2][1] + (int)part3.pi[global::Char.CharInfo[this.cf][2][0]].dx, this.cy - global::Char.CharInfo[this.cf][2][2] + (int)part3.pi[global::Char.CharInfo[this.cf][2][0]].dy + this.dy, 0, 0);
        if (!GameCanvas.lowGraphic)
        {
            for (int j = 0; j < MapTemplate.vCurrItem[CreateCharScr.indexGender].size(); j++)
            {
                BgItem bgItem2 = (BgItem)MapTemplate.vCurrItem[CreateCharScr.indexGender].elementAt(j);
                if (bgItem2.idImage != -1 && (int)bgItem2.layer == 3)
                {
                    bgItem2.paint(g);
                }
            }
        }
        g.translate(-g.getTranslateX(), -g.getTranslateY());
        if (GameCanvas.w < 200)
        {
            GameCanvas.paintz.paintFrame(GameScr.popupX, GameScr.popupY, GameScr.popupW, GameScr.popupH, g);
            SmallImage.drawSmallImage(g, (int)part.pi[global::Char.CharInfo[0][0][0]].id, GameCanvas.w / 2 + global::Char.CharInfo[0][0][1] + (int)part.pi[global::Char.CharInfo[0][0][0]].dx, GameScr.popupY + 30 + 3 * num - global::Char.CharInfo[0][0][2] + (int)part.pi[global::Char.CharInfo[0][0][0]].dy + this.dy, 0, 0);
            SmallImage.drawSmallImage(g, (int)part2.pi[global::Char.CharInfo[0][1][0]].id, GameCanvas.w / 2 + global::Char.CharInfo[0][1][1] + (int)part2.pi[global::Char.CharInfo[0][1][0]].dx, GameScr.popupY + 30 + 3 * num - global::Char.CharInfo[0][1][2] + (int)part2.pi[global::Char.CharInfo[0][1][0]].dy + this.dy, 0, 0);
            SmallImage.drawSmallImage(g, (int)part3.pi[global::Char.CharInfo[0][2][0]].id, GameCanvas.w / 2 + global::Char.CharInfo[0][2][1] + (int)part3.pi[global::Char.CharInfo[0][2][0]].dx, GameScr.popupY + 30 + 3 * num - global::Char.CharInfo[0][2][2] + (int)part3.pi[global::Char.CharInfo[0][2][0]].dy + this.dy, 0, 0);
            for (int k = 0; k < mResources.MENUNEWCHAR.Length; k++)
            {
                if (CreateCharScr.selected == k)
                {
                    g.drawRegion(GameScr.arrow, 0, 0, 13, 16, 2, GameScr.popupX + 10 + ((GameCanvas.gameTick % 7 <= 3) ? 0 : 1), GameScr.popupY + 35 + k * num, StaticObj.VCENTER_HCENTER);
                    g.drawRegion(GameScr.arrow, 0, 0, 13, 16, 0, GameScr.popupX + GameScr.popupW - 10 - ((GameCanvas.gameTick % 7 <= 3) ? 0 : 1), GameScr.popupY + 35 + k * num, StaticObj.VCENTER_HCENTER);
                }
                mFont.tahoma_7b_dark.drawString(g, mResources.MENUNEWCHAR[k], GameScr.popupX + 20, GameScr.popupY + 30 + k * num, 0);
            }
            mFont.tahoma_7b_dark.drawString(g, mResources.MENUGENDER[CreateCharScr.indexGender], GameScr.popupX + 70, GameScr.popupY + 30 + 1 * num, mFont.LEFT);
            mFont.tahoma_7b_dark.drawString(g, mResources.hairStyleName[CreateCharScr.indexGender][CreateCharScr.indexHair], GameScr.popupX + 55, GameScr.popupY + 30 + 2 * num, mFont.LEFT);
            CreateCharScr.tAddName.paint(g);
        }
        else
        {
            if (!Main.isPC)
            {
                if (mGraphics.addYWhenOpenKeyBoard != 0)
                {
                    this.yButton = 110;
                    this.disY    = 60;
                    if (GameCanvas.w > GameCanvas.h)
                    {
                        this.yButton = GameScr.popupY + 30 + 3 * num + (int)part3.pi[global::Char.CharInfo[0][2][0]].dy + this.dy - 15;
                        this.disY    = 35;
                    }
                }
                else
                {
                    this.yButton = 110;
                    this.disY    = 60;
                    if (GameCanvas.w > GameCanvas.h)
                    {
                        this.yButton = 100;
                        this.disY    = 45;
                    }
                }
                CreateCharScr.tAddName.y = this.yButton - CreateCharScr.tAddName.height - this.disY + 5;
            }
            else
            {
                this.yButton = 110;
                this.disY    = 60;
                if (GameCanvas.w > GameCanvas.h)
                {
                    this.yButton = 100;
                    this.disY    = 45;
                }
                CreateCharScr.tAddName.y = this.yBegin;
            }
            for (int l = 0; l < 3; l++)
            {
                int num5 = 78;
                if (l != CreateCharScr.indexGender)
                {
                    g.drawImage(GameScr.imgLbtn, GameCanvas.w / 2 - num5 + l * num5, this.yButton, 3);
                }
                else
                {
                    if (CreateCharScr.selected == 1)
                    {
                        g.drawRegion(GameScr.arrow, 0, 0, 13, 16, 4, GameCanvas.w / 2 - num5 + l * num5, this.yButton - 20 + ((GameCanvas.gameTick % 7 <= 3) ? 0 : 1), StaticObj.VCENTER_HCENTER);
                    }
                    g.drawImage(GameScr.imgLbtnFocus, GameCanvas.w / 2 - num5 + l * num5, this.yButton, 3);
                }
                mFont.tahoma_7b_dark.drawString(g, mResources.MENUGENDER[l], GameCanvas.w / 2 - num5 + l * num5, this.yButton - 5, mFont.CENTER);
            }
            for (int m = 0; m < 3; m++)
            {
                int num6 = 78;
                if (m != CreateCharScr.indexHair)
                {
                    g.drawImage(GameScr.imgLbtn, GameCanvas.w / 2 - num6 + m * num6, this.yButton + this.disY, 3);
                }
                else
                {
                    if (CreateCharScr.selected == 2)
                    {
                        g.drawRegion(GameScr.arrow, 0, 0, 13, 16, 4, GameCanvas.w / 2 - num6 + m * num6, this.yButton + this.disY - 20 + ((GameCanvas.gameTick % 7 <= 3) ? 0 : 1), StaticObj.VCENTER_HCENTER);
                    }
                    g.drawImage(GameScr.imgLbtnFocus, GameCanvas.w / 2 - num6 + m * num6, this.yButton + this.disY, 3);
                }
                mFont.tahoma_7b_dark.drawString(g, mResources.hairStyleName[CreateCharScr.indexGender][m], GameCanvas.w / 2 - num6 + m * num6, this.yButton + this.disY - 5, mFont.CENTER);
            }
            CreateCharScr.tAddName.paint(g);
        }
        g.setClip(0, 0, GameCanvas.w, GameCanvas.h);
        mFont.tahoma_7b_white.drawString(g, mResources.server + " " + LoginScr.serverName, 5, 5, 0, mFont.tahoma_7b_dark);
        if (!TouchScreenKeyboard.visible)
        {
            base.paint(g);
        }
    }
    // Token: 0x06000614 RID: 1556 RVA: 0x0004B0F0 File Offset: 0x000492F0
    public void loadMapTableFromResource(sbyte[] mapID)
    {
        if (GameCanvas.lowGraphic)
        {
            return;
        }
        DataInputStream dataInputStream = null;

        try
        {
            for (int i = 0; i < mapID.Length; i++)
            {
                dataInputStream = MyStream.readFile("/mymap/mapTable" + mapID[i]);
                Cout.LogError("mapTable : " + mapID[i]);
                short num = dataInputStream.readShort();
                MapTemplate.vCurrItem[i] = new MyVector();
                Res.outz("nItem= " + num);
                for (int j = 0; j < (int)num; j++)
                {
                    short id   = dataInputStream.readShort();
                    short num2 = dataInputStream.readShort();
                    short num3 = dataInputStream.readShort();
                    if (TileMap.getBIById((int)id) != null)
                    {
                        BgItem bibyId = TileMap.getBIById((int)id);
                        BgItem bgItem = new BgItem();
                        bgItem.id      = (int)id;
                        bgItem.idImage = bibyId.idImage;
                        bgItem.dx      = bibyId.dx;
                        bgItem.dy      = bibyId.dy;
                        bgItem.x       = (int)num2 * (int)TileMap.size;
                        bgItem.y       = (int)num3 * (int)TileMap.size;
                        bgItem.layer   = bibyId.layer;
                        MapTemplate.vCurrItem[i].addElement(bgItem);
                        if (!BgItem.imgNew.containsKey(bgItem.idImage + string.Empty))
                        {
                            try
                            {
                                Image image = GameCanvas.loadImage("/mapBackGround/" + bgItem.idImage + ".png");
                                if (image == null)
                                {
                                    BgItem.imgNew.put(bgItem.idImage + string.Empty, Image.createRGBImage(new int[1], 1, 1, true));
                                    Service.gI().getBgTemplate(bgItem.idImage);
                                }
                                else
                                {
                                    BgItem.imgNew.put(bgItem.idImage + string.Empty, image);
                                }
                            }
                            catch (Exception ex)
                            {
                                Image image2 = GameCanvas.loadImage("/mapBackGround/" + bgItem.idImage + ".png");
                                if (image2 == null)
                                {
                                    image2 = Image.createRGBImage(new int[1], 1, 1, true);
                                    Service.gI().getBgTemplate(bgItem.idImage);
                                }
                                BgItem.imgNew.put(bgItem.idImage + string.Empty, image2);
                            }
                            BgItem.vKeysLast.addElement(bgItem.idImage + string.Empty);
                        }
                        if (!BgItem.isExistKeyNews(bgItem.idImage + string.Empty))
                        {
                            BgItem.vKeysNew.addElement(bgItem.idImage + string.Empty);
                        }
                        bgItem.changeColor();
                    }
                    else
                    {
                        Res.outz("item null");
                    }
                }
            }
        }
        catch (Exception ex2)
        {
            Cout.println("LOI TAI loadMapTableFromResource" + ex2.ToString());
        }
    }