MapPlaceDictionary.Add "曙光平原", 	Array("精灵城", "流火学院", "磐地学院")
        MapPlaceDictionary.Add "流火学院", 	Array("曙光平原")
        MapPlaceDictionary.Add "磐地学院", 	Array("曙光平原")
        MapPlaceDictionary.Add "沉睡森林", 	Array("精灵城", "云麓山脉")
        MapPlaceDictionary.Add "云麓山脉", 	Array("沉睡森林", "守护之地")
        MapPlaceDictionary.Add "守护之地", 	Array("云麓山脉", "古城遗迹")
        MapPlaceDictionary.Add "古城遗迹", 	Array("守护之地")
        '//
        Function WayToPlace(ByVal PlaceSource, ByVal PlaceDes, ByVal BackWayPlace)
        Dim ArrayOfPath, PlaceCount, Pla0ceArrayOfWayTo,ReachPlace
        Dim lpa, PlaceWayTo
        If MapPlaceDictionary.Exists(PlaceSource) Then
        PlaceArrayOfWayTo = MapPlaceDictionary.Item(PlaceSource)
        '//MsgBox PlaceArrayOfWayTo(0),0,UBound(PlaceArrayOfWayTo)
        Else
        Exit Function
        End If
        lpa=0
        PlaceCount = 0
        ReachPlace = False
        If PlaceSource = PlaceDes Then
        ReachPlace = True
        End If
        While lpa<=UBound(PlaceArrayOfWayTo) And Not(ReachPlace)
        If PlaceArrayOfWayTo(lpa)<>BackWayPlace Then
        ArrayOfPath = WayToPlace(PlaceArrayOfWayTo(lpa), PlaceDes, PlaceSource)
        End If
        If Not(IsEmpty(ArrayOfPath)) Then
        ReachPlace = True
        End If
        lpa=lpa+1
        Wend
        If ReachPlace Then
        If IsEmpty(ArrayOfPath) Then
        WayToPlace = Array(PlaceSource)
        Else
        WayToPlace = JoinArray(Array(PlaceSource),ArrayOfPath)
        End If
        End If
        End Function
        '//
        Function JoinArray(ByVal Array1, ByVal Array2)
        Dim NewArrUbound, NewArr()
        If IsArray(Array1) And IsArray(Array2) Then
        NewArrUbound = UBound(Array1)+UBound(Array2)+1
        ReDim NewArr(NewArrUbound)
        For li=0 To NewArrUbound Step 1
        If li<=UBound(Array1) Then
        NewArr(li) = Array1(li)
        Else
        NewArr(li) = Array2(li-UBound(Array1)-1)
        End If
        Next
        JoinArray = NewArr
        Else
        End If
        Erase NewArr
        End Function
    VBSEnd 
Return 
//---------------------------------------------------------------
//
//---------------------------------------------------------------
Sub 移动到下一个地图
    Dim CurPlace, LastColorRec, MvColorRec, Tmpli, Tmplj, TmpP, EdgArr
    CurPlace = place
    LastColorRec = ""
    MvColorRec = ""
    Tmpli = 0
    Tmplj = 0
    TmpP = 0
    EdgArr = Array(0,0)
    If GoPlaceTimeArr(2)>180000
        //以下操作3分钟仍没到下个地图.重置计时,重走路点.
        GoPlaceTimeArr(2)=0
    EndIf 
    //当战斗时退出循环...
    While fighting<=0 And CurPlace<>GToPlace And ColorCompare(GetPixelColor(623,151),"C6CBFF",15) And GoPlaceTimeArr(2)<180000
        //If fighting<=0 And CurPlace<>GToPlace And ColorCompare(GetPixelColor(623,151),"C6CBFF",15) And GoPlaceTimeArr(2)<180000
        Plugin GoPlaceTimeArr(0) = GetSysInfo.GetTime()
        //
        //检查角色是否正在移动
        MvColorRec = GetPixelColor(496,698) & GetPixelColor(939,698)
        If LastColorRec=MvColorRec
            LastColorRec = MvColorRec
            //静止移动时操作移动
            //
            //按照有效移动时间计算当前路点
            Tmplj = 0
            TmpP = 0
            RndAng = 6.2831853*Rnd
            While Tmplj<UBound(lRoadPointArr)
                If lRoadPointArr(TmpP)<=GoPlaceTimeArr(2)
                    TmpP = Tmplj
                EndIf 
                Tmplj = Tmplj+3
            EndWhile 
            //
            //点击小地图上的每一个路点
            MoveTo lRoadPointArr(TmpP+1),lRoadPointArr(TmpP+2)