예제 #1
0
    // Token: 0x060002D6 RID: 726 RVA: 0x00016690 File Offset: 0x00014890
    public static void hint()
    {
        if (global::Char.myCharz().taskMaint != null && GameCanvas.currentScreen == GameScr.instance)
        {
            int taskId = (int)global::Char.myCharz().taskMaint.taskId;
            int index  = global::Char.myCharz().taskMaint.index;
            Hint.isCamera     = false;
            Hint.trans        = 0;
            Hint.type         = 0;
            Hint.isPaint      = true;
            Hint.isPaintArrow = true;
            if (GameCanvas.menu.showMenu && taskId > 0)
            {
                Hint.isPaint = false;
            }
            switch (taskId)
            {
            case 0:
                if (ChatPopup.currChatPopup != null || global::Char.myCharz().statusMe == 14)
                {
                    Hint.x = GameCanvas.w / 2;
                    Hint.y = GameCanvas.h - 15;
                }
                else
                {
                    if (index == 0 && TileMap.vGo.size() != 0)
                    {
                        Hint.x        = (int)(((Waypoint)TileMap.vGo.elementAt(0)).minX - 100);
                        Hint.y        = (int)(((Waypoint)TileMap.vGo.elementAt(0)).minY + 40);
                        Hint.isCamera = true;
                    }
                    if (index == 1)
                    {
                        Hint.nextMap(0);
                    }
                    if (index == 2)
                    {
                        Hint.clickNpc();
                    }
                    if (index == 3)
                    {
                        if (!GameCanvas.panel.isShow)
                        {
                            Hint.clickNpc();
                        }
                        else if (GameCanvas.panel.currentTabIndex == 0)
                        {
                            if (GameCanvas.panel.cp == null)
                            {
                                Hint.x = GameCanvas.panel.xScroll + GameCanvas.panel.wScroll / 2;
                                Hint.y = GameCanvas.panel.yScroll + 20;
                            }
                            else if (GameCanvas.menu.tDelay != 0)
                            {
                                Hint.x = GameCanvas.panel.xScroll + 25;
                                Hint.y = GameCanvas.panel.yScroll + 60;
                            }
                        }
                        else if (GameCanvas.panel.currentTabIndex == 1)
                        {
                            Hint.x = GameCanvas.panel.startTabPos + 10;
                            Hint.y = 65;
                        }
                    }
                    if (index == 4)
                    {
                        if (GameCanvas.panel.isShow)
                        {
                            Hint.x = GameCanvas.panel.cmdClose.x + 5;
                            Hint.y = GameCanvas.panel.cmdClose.y + 5;
                        }
                        else if (GameCanvas.menu.showMenu)
                        {
                            Hint.x = GameCanvas.w / 2;
                            Hint.y = GameCanvas.h - 20;
                        }
                        else
                        {
                            Hint.clickNpc();
                        }
                    }
                    if (index == 5)
                    {
                        Hint.clickNpc();
                    }
                }
                break;

            case 1:
                if (ChatPopup.currChatPopup != null || global::Char.myCharz().statusMe == 14)
                {
                    Hint.x = GameCanvas.w / 2;
                    Hint.y = GameCanvas.h - 15;
                }
                else
                {
                    if (index == 0)
                    {
                        if (TileMap.isOfflineMap())
                        {
                            Hint.nextMap(0);
                        }
                        else
                        {
                            Hint.clickMob();
                        }
                    }
                    if (index == 1)
                    {
                        if (!TileMap.isOfflineMap())
                        {
                            Hint.nextMap(1);
                        }
                        else
                        {
                            Hint.clickNpc();
                        }
                    }
                }
                break;

            case 2:
                if (ChatPopup.currChatPopup != null || global::Char.myCharz().statusMe == 14)
                {
                    Hint.x = GameCanvas.w / 2;
                    Hint.y = GameCanvas.h - 15;
                }
                else
                {
                    if (index == 0)
                    {
                        if (!TileMap.isOfflineMap())
                        {
                            Hint.isViewMap = true;
                        }
                        if (!GameCanvas.panel.isShow)
                        {
                            if (!Hint.isViewMap)
                            {
                                Hint.x     = GameScr.gI().cmdMenu.x;
                                Hint.y     = GameScr.gI().cmdMenu.y + 13;
                                Hint.trans = 1;
                            }
                            else
                            {
                                if (GameScr.getTaskMapId() == TileMap.mapID)
                                {
                                    if (!Hint.isHaveItem())
                                    {
                                        Hint.clickMob();
                                    }
                                }
                                else
                                {
                                    Hint.nextMap(0);
                                }
                                if (Hint.isViewMap)
                                {
                                    Hint.isCloseMap = true;
                                }
                            }
                        }
                        else if (!Hint.isViewMap)
                        {
                            if (GameCanvas.panel.currentTabIndex == 0)
                            {
                                int num = (GameCanvas.h <= 300) ? 10 : 15;
                                Hint.x = GameCanvas.panel.xScroll + GameCanvas.panel.wScroll / 2;
                                Hint.y = GameCanvas.panel.yScroll + GameCanvas.panel.hScroll - num;
                            }
                            else
                            {
                                Hint.x = GameCanvas.panel.startTabPos + 10;
                                Hint.y = 65;
                            }
                        }
                        else if (!Hint.isCloseMap)
                        {
                            Hint.x = GameCanvas.panel.cmdClose.x + 5;
                            Hint.y = GameCanvas.panel.cmdClose.y + 5;
                        }
                        else
                        {
                            Hint.isPaint = false;
                        }
                        if (global::Char.myCharz().cMP <= 0)
                        {
                            Hint.x        = GameScr.xHP + 5;
                            Hint.y        = GameScr.yHP + 13;
                            Hint.isCamera = false;
                        }
                    }
                    if (index == 1)
                    {
                        Hint.isPaint      = false;
                        Hint.isPaintArrow = false;
                    }
                }
                break;

            default:
                if (global::Char.myCharz().taskMaint.taskId == 9 && global::Char.myCharz().taskMaint.index == 2)
                {
                    for (int i = 0; i < PopUp.vPopups.size(); i++)
                    {
                        PopUp popUp = (PopUp)PopUp.vPopups.elementAt(i);
                        if (popUp.cy <= 24)
                        {
                            Hint.x            = popUp.cx + popUp.sayWidth / 2;
                            Hint.y            = popUp.cy + 30;
                            Hint.isCamera     = true;
                            Hint.isPaint      = false;
                            Hint.isPaintArrow = true;
                            return;
                        }
                    }
                }
                Hint.isPaint      = false;
                Hint.isPaintArrow = false;
                break;
            }
        }
        else
        {
            Hint.isPaint      = false;
            Hint.isPaintArrow = false;
        }
    }