Browse Source

地图逻辑修改

lzx 6 ngày trước cách đây
mục cha
commit
8b88a38ba7

+ 556 - 12
Assets/Res/UI/LevelChoosePanel/PlacesInfoPanel.prefab

@@ -14,7 +14,7 @@ GameObject:
   - component: {fileID: 969735113471925617}
   m_Layer: 5
   m_HasEditorInfo: 1
-  m_Name: Text (Legacy) (1)
+  m_Name: Text_Go
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -69,7 +69,7 @@ MonoBehaviour:
       m_Calls: []
   m_FontData:
     m_Font: {fileID: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
-    m_FontSize: 44
+    m_FontSize: 35
     m_FontStyle: 1
     m_BestFit: 0
     m_MinSize: 10
@@ -80,7 +80,7 @@ MonoBehaviour:
     m_HorizontalOverflow: 0
     m_VerticalOverflow: 0
     m_LineSpacing: 1
-  m_Text: "\u524D\u5F80"
+  m_Text: "\u89E3\u9501\u4E0B\u4E00\u5730\u70B9"
 --- !u!114 &969735113471925617
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -133,7 +133,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
-  m_AnchoredPosition: {x: -11.5489, y: -305.1}
+  m_AnchoredPosition: {x: -11.5489, y: -344.4}
   m_SizeDelta: {x: 451.1251, y: 34.2721}
   m_Pivot: {x: 0.5, y: 1}
 --- !u!222 &7336380052441854382
@@ -174,7 +174,7 @@ MonoBehaviour:
   m_FillOrigin: 0
   m_UseSpriteMesh: 0
   m_PixelsPerUnitMultiplier: 1
-  _icon_name: dec_juxing_fang
+  _icon_name: dec_fenge_jianbian
   isNotLoadDeftIcon: 0
   CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
   packInfo:
@@ -373,6 +373,198 @@ MonoBehaviour:
   topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
   bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
   direction: 0
+--- !u!1 &2348922118963438151
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 8728597385881931141}
+  - component: {fileID: 7274836141279032238}
+  - component: {fileID: 2953829275927705068}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Text_TanSuDu
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &8728597385881931141
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2348922118963438151}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1026054794004960627}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: -0.000015258789, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &7274836141279032238
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2348922118963438151}
+  m_CullTransparentMesh: 1
+--- !u!114 &2953829275927705068
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2348922118963438151}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 12800000, guid: e588d93665211944387ec8c03c8726ae, type: 3}
+    m_FontSize: 18
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 1
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "[\u5C71\u811A]\u63A2\u7D22\u5EA6 10%"
+--- !u!1 &2382025226087370073
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 1026054794004960627}
+  - component: {fileID: 5233347206102238726}
+  - component: {fileID: 1361135847789874677}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Slider_SmallJD
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1026054794004960627
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2382025226087370073}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 3547659905408716116}
+  - {fileID: 6795561961694487067}
+  - {fileID: 8728597385881931141}
+  m_Father: {fileID: 4534880848114758260}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: -0.8001003, y: 52.9}
+  m_SizeDelta: {x: 492.68, y: 33.1795}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &5233347206102238726
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2382025226087370073}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 0
+  m_TargetGraphic: {fileID: 0}
+  m_FillRect: {fileID: 7389830302287868273}
+  m_HandleRect: {fileID: 0}
+  m_Direction: 0
+  m_MinValue: 0
+  m_MaxValue: 1
+  m_WholeNumbers: 0
+  m_Value: 0.354
+  m_OnValueChanged:
+    m_PersistentCalls:
+      m_Calls: []
+--- !u!114 &1361135847789874677
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2382025226087370073}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 306cc8c2b49d7114eaa3623786fc2126, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreLayout: 1
+  m_MinWidth: -1
+  m_MinHeight: -1
+  m_PreferredWidth: -1
+  m_PreferredHeight: -1
+  m_FlexibleWidth: -1
+  m_FlexibleHeight: -1
+  m_LayoutPriority: 1
 --- !u!1 &3928254918750203810
 GameObject:
   m_ObjectHideFlags: 0
@@ -675,7 +867,7 @@ MonoBehaviour:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 4981839340645751319}
-  m_Enabled: 1
+  m_Enabled: 0
   m_EditorHideFlags: 0
   m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
   m_Name: 
@@ -728,6 +920,95 @@ MonoBehaviour:
   m_OnValueChanged:
     m_PersistentCalls:
       m_Calls: []
+--- !u!1 &5102637531298130662
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 3547659905408716116}
+  - component: {fileID: 8858969093048269334}
+  - component: {fileID: 7211677343059301742}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Background
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &3547659905408716116
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5102637531298130662}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1026054794004960627}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: -0.000015258789, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &8858969093048269334
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5102637531298130662}
+  m_CullTransparentMesh: 1
+--- !u!114 &7211677343059301742
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5102637531298130662}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.24705884, g: 0.24705884, b: 0.227451, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: 
+  isNotLoadDeftIcon: 1
+  CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
+  packInfo:
+    packName: tongyong
+    packgJsonPath: /Art/UIAssets/TextrueJson\tongyong.txt
+    packgSpritePath: Assets/Res/UIAtlas/tongyong.spriteatlasv2
+    lasetJsonGUID: de4a477140878ce911aa37d161cbf014
+  imageH: 20.902199
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
 --- !u!1 &5188785653245930354
 GameObject:
   m_ObjectHideFlags: 0
@@ -842,11 +1123,11 @@ RectTransform:
   m_Children: []
   m_Father: {fileID: 4925105276589191232}
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
-  m_AnchorMin: {x: 0, y: 1}
-  m_AnchorMax: {x: 1, y: 1}
-  m_AnchoredPosition: {x: 0, y: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0.000015258789, y: 0}
   m_SizeDelta: {x: 0, y: 0}
-  m_Pivot: {x: 0, y: 1}
+  m_Pivot: {x: 0.5, y: 0.5}
 --- !u!114 &8497111536695238727
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -864,7 +1145,7 @@ MonoBehaviour:
     m_Right: 0
     m_Top: 1
     m_Bottom: 0
-  m_ChildAlignment: 0
+  m_ChildAlignment: 4
   m_Spacing: 4.17
   m_ChildForceExpandWidth: 1
   m_ChildForceExpandHeight: 1
@@ -1060,11 +1341,13 @@ RectTransform:
   - {fileID: 5996218483595023549}
   - {fileID: 3448986095428033778}
   - {fileID: 116889275732161449}
+  - {fileID: 1026054794004960627}
   - {fileID: 6578784403621460593}
   - {fileID: 3035646753122329493}
   - {fileID: 7892632760807934045}
   - {fileID: 5693100649297059383}
   - {fileID: 6705522348014208234}
+  - {fileID: 6012375192494328535}
   m_Father: {fileID: 9037135992368401232}
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 0.5}
@@ -1158,7 +1441,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 1}
   m_AnchorMax: {x: 0, y: 1}
-  m_AnchoredPosition: {x: 267.3, y: -357}
+  m_AnchoredPosition: {x: 267.3, y: -396.3}
   m_SizeDelta: {x: 428.11, y: 220.5094}
   m_Pivot: {x: 0.5, y: 1}
 --- !u!222 &6166222951810868570
@@ -1283,6 +1566,43 @@ MonoBehaviour:
     m_VerticalOverflow: 0
     m_LineSpacing: 1
   m_Text: "\u7B2C\u4E00\u7AE0.\u900D\u9065\u6E38"
+--- !u!1 &7693130723521537062
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 6795561961694487067}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Fill Area
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &6795561961694487067
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 7693130723521537062}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 7389830302287868273}
+  m_Father: {fileID: 1026054794004960627}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
 --- !u!1 &8125396639363880815
 GameObject:
   m_ObjectHideFlags: 0
@@ -1418,6 +1738,95 @@ MonoBehaviour:
   m_OnClick:
     m_PersistentCalls:
       m_Calls: []
+--- !u!1 &8551123114888839117
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 7
+  m_Component:
+  - component: {fileID: 7389830302287868273}
+  - component: {fileID: 7908578725401352913}
+  - component: {fileID: 890217472061856336}
+  m_Layer: 0
+  m_HasEditorInfo: 1
+  m_Name: Fill
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &7389830302287868273
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8551123114888839117}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 6795561961694487067}
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &7908578725401352913
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8551123114888839117}
+  m_CullTransparentMesh: 1
+--- !u!114 &890217472061856336
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 8551123114888839117}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3c247620ca3a1fd4ab2a2f3a5b287e07, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.68235296, g: 0.8078432, b: 0.8000001, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 0}
+  m_Type: 1
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+  _icon_name: dec_juxing_fang
+  isNotLoadDeftIcon: 0
+  CurrSpriteAtlas: {fileID: 100100200, guid: b02f6b41a7a9fa8458f4226ab6b3ea47, type: 3}
+  packInfo:
+    packName: tongyong
+    packgJsonPath: /Art/UIAssets/TextrueJson\tongyong.txt
+    packgSpritePath: Assets/Res/UIAtlas/tongyong.spriteatlasv2
+    lasetJsonGUID: de4a477140878ce911aa37d161cbf014
+  imageH: 20.902199
+  useGradient: 0
+  topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
+  bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
+  direction: 0
 --- !u!1 &8572950913021192746
 GameObject:
   m_ObjectHideFlags: 0
@@ -1672,6 +2081,26 @@ MonoBehaviour:
     isAssetBundle: 0
     isList: 0
     ListCollectorDatas: []
+  - key: ShopBtnWidgetGame
+    gameObject: {fileID: 121537455608265632}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Slider_SmallJD
+    gameObject: {fileID: 5233347206102238726}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Text_TanSuDu
+    gameObject: {fileID: 2953829275927705068}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
+  - key: Text_Go
+    gameObject: {fileID: 8932349408704961495}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
   isAssetBundle: 0
 --- !u!1 &9018767446768610637
 GameObject:
@@ -1852,3 +2281,118 @@ MonoBehaviour:
   topOrLeftColor: {r: 1, g: 1, b: 1, a: 1}
   bottomOrRightColor: {r: 0, g: 0, b: 0, a: 1}
   direction: 0
+--- !u!1001 &940294652879713634
+PrefabInstance:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_Modification:
+    serializedVersion: 3
+    m_TransformParent: {fileID: 4534880848114758260}
+    m_Modifications:
+    - target: {fileID: 910660254783983298, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_Name
+      value: ShopBtnWidgetGame
+      objectReference: {fileID: 0}
+    - target: {fileID: 910660254783983298, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_IsActive
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 1463050438306358852, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_FontData.m_FontSize
+      value: 20
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_Pivot.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_Pivot.y
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_AnchorMax.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_AnchorMax.y
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_AnchorMin.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_AnchorMin.y
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_SizeDelta.x
+      value: 98.7123
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_SizeDelta.y
+      value: 58.3894
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: -0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: -0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: -0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_AnchoredPosition.x
+      value: 20.202423
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_AnchoredPosition.y
+      value: -227.78363
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.z
+      value: 0
+      objectReference: {fileID: 0}
+    m_RemovedComponents: []
+    m_RemovedGameObjects: []
+    m_AddedGameObjects: []
+    m_AddedComponents: []
+  m_SourcePrefab: {fileID: 100100000, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+--- !u!1 &121537455608265632 stripped
+GameObject:
+  m_CorrespondingSourceObject: {fileID: 910660254783983298, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+  m_PrefabInstance: {fileID: 940294652879713634}
+  m_PrefabAsset: {fileID: 0}
+--- !u!224 &6012375192494328535 stripped
+RectTransform:
+  m_CorrespondingSourceObject: {fileID: 6808499670976233397, guid: d70bc07ad46cebb4ab45136fcd482e9f, type: 3}
+  m_PrefabInstance: {fileID: 940294652879713634}
+  m_PrefabAsset: {fileID: 0}

+ 51 - 1
Assets/Res/UI/MainPanel/MainPanel.prefab

@@ -1336,9 +1336,10 @@ GameObject:
   - component: {fileID: 5851476483486986221}
   - component: {fileID: 2731907360025137753}
   - component: {fileID: 6907455548631346063}
+  - component: {fileID: 711583036838703953}
   m_Layer: 0
   m_HasEditorInfo: 1
-  m_Name: myImage (2)
+  m_Name: Btn_ChangeMap
   m_TagString: Untagged
   m_Icon: {fileID: 0}
   m_NavMeshLayer: 0
@@ -1456,6 +1457,50 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   m_HorizontalFit: 2
   m_VerticalFit: 0
+--- !u!114 &711583036838703953
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 2746795842072799363}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 5851476483486986221}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls: []
 --- !u!1 &2763360348310120830
 GameObject:
   m_ObjectHideFlags: 0
@@ -4426,4 +4471,9 @@ MonoBehaviour:
     isAssetBundle: 0
     isList: 0
     ListCollectorDatas: []
+  - key: Btn_ChangeMap
+    gameObject: {fileID: 711583036838703953}
+    isAssetBundle: 0
+    isList: 0
+    ListCollectorDatas: []
   isAssetBundle: 0

+ 1 - 0
Assets/Scripts/GameLogic/Player/PlayerManager.cs

@@ -492,6 +492,7 @@ public class PlayerManager : Singleton<PlayerManager>
             }
 
             PlayerManager.Instance.CurrentsmallPlaces = smallPlacesData;
+            
 
   
             EventManager.Instance.Dispatch(CustomEventType.ChangeMap, null);

+ 99 - 106
Assets/Scripts/GameUI/EventManager/EventSystemManager.cs

@@ -98,14 +98,18 @@ public class EventSystemManager : Singleton<EventSystemManager>
             HeroPowerUpConfig heroPowerUpConfig = PlayerManager.Instance.myHero.powerUpConfig;
             if (AccountFileInfo.Instance.playerData.divineSensePoint < heroPowerUpConfig.ShenshiMax)
             {
-                if (AccountFileInfo.Instance.playerData.todayDivineSensePoint < PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[0])
+                if (AccountFileInfo.Instance.playerData.todayDivineSensePoint <
+                    PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[0])
                 {
-                    AccountFileInfo.Instance.playerData.todayDivineSensePoint += PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[1];
-                    AccountFileInfo.Instance.playerData.divineSensePoint += PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[1];
+                    AccountFileInfo.Instance.playerData.todayDivineSensePoint +=
+                        PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[1];
+                    AccountFileInfo.Instance.playerData.divineSensePoint +=
+                        PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[1];
                 }
                 else
                 {
-                    AccountFileInfo.Instance.playerData.divineSensePoint += PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[2];
+                    AccountFileInfo.Instance.playerData.divineSensePoint +=
+                        PlayerManager.Instance.gameConstantConfig.shenshiPointRecSPD[2];
                 }
 
                 EventManager.Instance.Dispatch(CustomEventType.DivineSensePointChange, null);
@@ -136,7 +140,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
 
         HeroPowerUpConfig heroPowerUpConfig = PlayerManager.Instance.myHero.powerUpConfig;
-        int count = (int)(AccountFileInfo.Instance.playerData.divineSensePoint / PlayerManager.Instance.gameConstantConfig.DetectEventCount);
+        int count = (int)(AccountFileInfo.Instance.playerData.divineSensePoint /
+                          PlayerManager.Instance.gameConstantConfig.DetectEventCount);
         if (count <= 0)
         {
             //神识值不够
@@ -180,7 +185,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
     public void UpdateZuizhongEventData()
     {
-        AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e => e.guid == AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId);
+        AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e =>
+            e.guid == AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId);
         if (eventList == null || eventList.guid == 0)
         {
             var mainEventData = GetMainEventDta();
@@ -190,7 +196,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
             }
             else if (AccountFileInfo.Instance.playerData.eventList.Count > 0)
             {
-                AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId = AccountFileInfo.Instance.playerData.eventList[0].guid;
+                AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId =
+                    AccountFileInfo.Instance.playerData.eventList[0].guid;
             }
         }
     }
@@ -222,7 +229,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
         foreach (var eventList in AccountFileInfo.Instance.playerData.eventList)
         {
             EventConfig eventConfig = ConfigComponent.Instance.Get<EventConfig>(eventList.eventID);
-            if (eventList == null || eventList.eventID == 0 || eventList.isCompleted || eventConfig.EventTriggerType == 4)
+            if (eventList == null || eventList.eventID == 0 || eventList.isCompleted ||
+                eventConfig.EventTriggerType == 4)
                 continue;
 
             if (eventConfig.EventTriggerType != 5)
@@ -283,9 +291,11 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
     private List<AccountFileInfo.EventList> DetectEvents(int eventCount, List<ItemInfo> useItems)
     {
-        SmallPlacesConfig smallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
+        SmallPlacesConfig smallPlacesConfig =
+            ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
         PlacesConfig bigMap = ConfigComponent.Instance.Get<PlacesConfig>(smallPlacesConfig.PlacesId);
-        DivineSenseConfig divineSenseConfig = ConfigComponent.Instance.Get<DivineSenseConfig>(AccountFileInfo.Instance.playerData.divineSenseLevel);
+        DivineSenseConfig divineSenseConfig =
+            ConfigComponent.Instance.Get<DivineSenseConfig>(AccountFileInfo.Instance.playerData.divineSenseLevel);
 
 
         LogTool.Log($"使用神识,神识等级:{AccountFileInfo.Instance.playerData.divineSenseLevel}");
@@ -301,7 +311,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
             {
                 if (PlayerManager.Instance.PlacesBl >= bigMap.ZhixianActivatedPercentage[i])
                 {
-                    if (!BagIsEvent(bigMap.ZhixianID[i]) && !IsEventTrigger(bigMap.ZhixianID[i]) && CanTriggerEvent(bigMap.ZhixianID[i]))
+                    if (!BagIsEvent(bigMap.ZhixianID[i]) && !IsEventTrigger(bigMap.ZhixianID[i]) &&
+                        CanTriggerEvent(bigMap.ZhixianID[i]))
                     {
                         zhiXianEvents.Add(ConfigComponent.Instance.Get<EventConfig>(bigMap.ZhixianID[i]));
                     }
@@ -341,10 +352,12 @@ public class EventSystemManager : Singleton<EventSystemManager>
                         {
                             if (IsEvenkLinkComplete(eventConditionData))
                                 continue;
-                            EventConditionConfig eventConditionConfig = ConfigComponent.Instance.Get<EventConditionConfig>(eventConditionData.eventCondition);
+                            EventConditionConfig eventConditionConfig =
+                                ConfigComponent.Instance.Get<EventConditionConfig>(eventConditionData.eventCondition);
                             for (var i1 = 0; i1 < eventConditionConfig.RelatedEvents?.Length; i1++)
                             {
-                                EventConfig eventConfig1 = ConfigComponent.Instance.Get<EventConfig>(eventConditionConfig.RelatedEvents[i1]);
+                                EventConfig eventConfig1 =
+                                    ConfigComponent.Instance.Get<EventConfig>(eventConditionConfig.RelatedEvents[i1]);
                                 int count = 0;
                                 foreach (var list in eventLists)
                                 {
@@ -406,7 +419,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
             float[] QualityBonusChance = divineSenseConfig.QualityBonusChance.ToArray();
             if (itemInfoType1 != null)
             {
-                QualityBonusChance[itemInfoType1.config.associateVlaue[0] - 1] *= itemInfoType1.config.associateVlaue[1];
+                QualityBonusChance[itemInfoType1.config.associateVlaue[0] - 1] *=
+                    itemInfoType1.config.associateVlaue[1];
             }
 
 
@@ -422,11 +436,17 @@ public class EventSystemManager : Singleton<EventSystemManager>
             // List<EventConfig> candidateEvents = eventConfigs.Where(e => bigMap.SpecialTaskID.Contains(e.ID) && CanTriggerEvent(e.ID) && e.EventQuality == quality && !BagIsEvent(e.ID) && eventLists.FirstOrDefault(el => el.eventID == e.ID) == null).ToList();
 
             // 获取通用事件
-            List<EventConfig> globalEvents = eventConfigs.Where(e => e.EventTriggerType == 1 && e.EventQuality == quality && eventLists.FirstOrDefault(el => el.eventID == e.ID) == null && CanTriggerEvent(e.ID) && CanEventType(e.ID, itemInfoType2)).ToList();
+            List<EventConfig> globalEvents = eventConfigs.Where(e =>
+                e.EventTriggerType == 1 && e.EventQuality == quality &&
+                eventLists.FirstOrDefault(el => el.eventID == e.ID) == null && CanTriggerEvent(e.ID) &&
+                CanEventType(e.ID, itemInfoType2)).ToList();
 
 
             //场景特定事件
-            List<EventConfig> candidateEvents = eventConfigs.Where(e => bigMap.SpecialTaskID.Contains(e.ID) && e.EventQuality == quality && eventLists.FirstOrDefault(el => el.eventID == e.ID) == null && CanTriggerEvent(e.ID) && CanEventType(e.ID, itemInfoType2)).ToList();
+            List<EventConfig> candidateEvents = eventConfigs.Where(e =>
+                bigMap.SpecialTaskID.Contains(e.ID) && e.EventQuality == quality &&
+                eventLists.FirstOrDefault(el => el.eventID == e.ID) == null && CanTriggerEvent(e.ID) &&
+                CanEventType(e.ID, itemInfoType2)).ToList();
 
             if (candidateEvents.Count == 0 && globalEvents.Count == 0)
             {
@@ -491,7 +511,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
         //主线任务只能刷一次
         if (eventConfig.EventTriggerType == 4 || eventConfig.EventTriggerType == 6)
         {
-            AccountFileInfo.EventList e = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e => e.eventID == eventID);
+            AccountFileInfo.EventList e =
+                AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e => e.eventID == eventID);
             if (e == null)
             {
                 e = AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(e => e.eventID == eventID);
@@ -509,7 +530,7 @@ public class EventSystemManager : Singleton<EventSystemManager>
                 eventList.curStep = eventConfig.EventLinksId[0];
                 eventList.selectEventLinkIds.Add(eventConfig.EventLinksId[0]);
                 //记录英雄等级 神识刷出来的战斗等级不变
-                if( PlayerManager.Instance.myHero != null)
+                if (PlayerManager.Instance.myHero != null)
                     eventList.heroLevel = PlayerManager.Instance.myHero.level.Value;
             }
         }
@@ -522,13 +543,11 @@ public class EventSystemManager : Singleton<EventSystemManager>
             eventList.curStep = eventConfig.EventLinksId[0];
             eventList.selectEventLinkIds.Add(eventConfig.EventLinksId[0]);
             //记录英雄等级 神识刷出来的战斗等级不变
-            if( PlayerManager.Instance.myHero != null)
+            if (PlayerManager.Instance.myHero != null)
                 eventList.heroLevel = PlayerManager.Instance.myHero.level.Value;
         }
 
 
-     
-
         //初始化神识链条,用于监听条件是否完成
         if (eventList != null && eventConfig.EventType != 2)
         {
@@ -543,7 +562,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
                 {
                     foreach (var i1 in eventLinkConfig.ConditionId)
                     {
-                        AccountFileInfo.EventConditionData eventConditionData = new AccountFileInfo.EventConditionData();
+                        AccountFileInfo.EventConditionData
+                            eventConditionData = new AccountFileInfo.EventConditionData();
                         eventConditionData.eventId = eventList.eventID;
                         eventConditionData.eventCondition = i1;
                         eventLinkData.eventConditions.Add(eventConditionData);
@@ -573,7 +593,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
         if (isOpenUi)
             return;
         // 获取随机事件
-        List<EventConfig> randomEvents = eventConfigs.Where(e => e.EventTriggerType == 2 && CanTriggerEvent(e.ID)).ToList();
+        List<EventConfig> randomEvents =
+            eventConfigs.Where(e => e.EventTriggerType == 2 && CanTriggerEvent(e.ID)).ToList();
 
 
         if (randomEvents.Count == 0)
@@ -601,7 +622,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
         AccountFileInfo.EventList eventList = AddEvent(evt.ID);
         CurrentEventList = eventList;
-        DialogueManager.Instance.StartDialogue(eventList, evt.EventLinksId[0], evt.ID, () => { CompleteEvent(evt.ID); });
+        DialogueManager.Instance.StartDialogue(eventList, evt.EventLinksId[0], evt.ID,
+            () => { CompleteEvent(evt.ID); });
     }
 
     /// <summary>
@@ -613,90 +635,46 @@ public class EventSystemManager : Singleton<EventSystemManager>
         if (isTriggerEvent)
             return;
         EventConfig eventConfig = ConfigComponent.Instance.Get<EventConfig>(evt.eventID);
-        SmallPlacesConfig smallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
+        SmallPlacesConfig smallPlacesConfig =
+            ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
         if (eventConfig.SmallPlacesId > 0)
         {
             if (eventConfig.SmallPlacesId != PlayerManager.Instance.CurrentsmallPlaces.id)
             {
-                
-                
-                AccountFileInfo.SmallPlacesData lastSmallPlacesData = PlayerManager.Instance.GetSmallPlacesData(eventConfig.SmallPlacesId - 1);
-                SmallPlacesConfig lastSmallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(eventConfig.SmallPlacesId - 1);
-                
-                SmallPlacesConfig currentSmallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(eventConfig.SmallPlacesId);
-                if (currentSmallPlacesConfig.ID > 1 && (lastSmallPlacesData == null || lastSmallPlacesData.completionEventCount < lastSmallPlacesConfig.CompletionEventCount))
-                {
-                    TipMessagePanel.OpenTipMessagePanel("上一个关卡事件完成度不足,无法切换地图");
-                    return;
-                }
+                SmallPlacesConfig lastSmallPlacesConfig =
+                    ConfigComponent.Instance.Get<SmallPlacesConfig>(eventConfig.SmallPlacesId);
+
+                CTask<bool> cT = CTask<bool>.Create();
 
-                if (lastSmallPlacesConfig.UnlockEnvetid != 0)
+                PlacesInfoPanel.OpenPanel(lastSmallPlacesConfig.PlacesId, (b) => { cT.SetResult(b); });
+
+                await cT;
+                if (eventConfig.SmallPlacesId != PlayerManager.Instance.CurrentsmallPlaces.id)
                 {
-                    AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce => ce.eventID == lastSmallPlacesConfig.UnlockEnvetid);
-                    if (eventList == null || !eventList.isCompleted)
-                    {
-                        TipMessagePanel.OpenTipMessagePanel("上一个关卡事件完成度不足,无法切换地图");
-                        return;
-                    }
+                    return;
                 }
-                
-                
-                
-                UIManager.Instance.HindCurrAllShowPanel();
-                CombatDrive.Instance.CombatController.ChangeState(CombatController.update);
-                CombatController.currActiveCombat.CombatHeroController.Flight(2, -90, 10);
-                UIManager.Instance.SetEventSystemEnable(false);
-                await TimerComponent.Instance.WaitAsync(2 * 1000 + 1200);
-                CombatDrive.Instance.CombatController.ChangeState(CombatController.idle);
-                UIManager.Instance.SetEventSystemEnable(true);
-                UIManager.Instance.ShowLastHindAllShowPanel();
-                
-                PlayerManager.Instance.ChangeMap(eventConfig.SmallPlacesId);
-                
-                // TipMessagePanel.OpenTipMessagePanel("需要到对应位置触发");
-               // returnurn;
+                // if (!cT.Result)
+                // {
+                //     return;
+                // }
             }
         }
         else if (eventConfig.placeID > 0)
         {
             if (eventConfig.placeID != smallPlacesConfig.PlacesId)
             {
-                
-                PlacesConfig placesConfig = ConfigComponent.Instance.Get<PlacesConfig>(eventConfig.placeID);
-                
-                
-                AccountFileInfo.SmallPlacesData lastSmallPlacesData = PlayerManager.Instance.GetSmallPlacesData(placesConfig.SmallPlacersIds[0] - 1);
-                SmallPlacesConfig lastSmallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(placesConfig.SmallPlacersIds[0] - 1);
-                SmallPlacesConfig currentSmallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(placesConfig.SmallPlacersIds[0] );
-                if (currentSmallPlacesConfig.ID > 1 && (lastSmallPlacesData == null || lastSmallPlacesData.completionEventCount < lastSmallPlacesConfig.CompletionEventCount))
-                {
-                    TipMessagePanel.OpenTipMessagePanel("上一个关卡事件完成度不足,无法切换地图");
-                    return;
-                }
+                CTask<bool> cT = CTask<bool>.Create();
+
+                PlacesInfoPanel.OpenPanel(eventConfig.placeID, (b) => { cT.SetResult(b); });
 
-                if (lastSmallPlacesConfig.UnlockEnvetid != 0)
+                await cT;
+                smallPlacesConfig =
+                    ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
+
+                if (eventConfig.placeID != smallPlacesConfig.PlacesId)
                 {
-                    AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce => ce.eventID == lastSmallPlacesConfig.UnlockEnvetid);
-                    if (eventList == null || !eventList.isCompleted)
-                    {
-                        TipMessagePanel.OpenTipMessagePanel("上一个关卡事件完成度不足,无法切换地图");
-                        return;
-                    }
+                    return;
                 }
-                
-                
-                
-                UIManager.Instance.HindCurrAllShowPanel();
-                CombatDrive.Instance.CombatController.ChangeState(CombatController.update);
-                CombatController.currActiveCombat.CombatHeroController.Flight(2, -90, 10);
-                UIManager.Instance.SetEventSystemEnable(false);
-                await TimerComponent.Instance.WaitAsync(2 * 1000 + 1200);
-                CombatDrive.Instance.CombatController.ChangeState(CombatController.idle);
-                UIManager.Instance.SetEventSystemEnable(true);
-                UIManager.Instance.ShowLastHindAllShowPanel();
-                
-                PlayerManager.Instance.ChangeMap(placesConfig.SmallPlacersIds[0]);
-                return;
             }
         }
 
@@ -705,7 +683,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
         isTriggerEvent = true;
 
 
-        LogTool.Log($"触发事件: {LanguageManager.Instance.Text(eventConfig.EventName)} (ID: {eventConfig.ID}, 品质: {eventConfig.EventQuality})");
+        LogTool.Log(
+            $"触发事件: {LanguageManager.Instance.Text(eventConfig.EventName)} (ID: {eventConfig.ID}, 品质: {eventConfig.EventQuality})");
 
         int dialogueID = 0;
         if (evt.curStep == 0)
@@ -730,7 +709,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
             cTask.SetResult();
         });
 
-        DivineSenceEventPreviewPanel divineSenceEventPreviewPanel = UIManager.Instance.GetComponent<DivineSenceEventPreviewPanel>();
+        DivineSenceEventPreviewPanel divineSenceEventPreviewPanel =
+            UIManager.Instance.GetComponent<DivineSenceEventPreviewPanel>();
         AppBarPanel appBarPanel = UIManager.Instance.GetComponent<AppBarPanel>();
         // DivineSenceInfoPanel divineSenceInfoPanel = UIManager.Instance.GetComponent<DivineSenceInfoPanel>();
         if (divineSenceEventPreviewPanel != null && !divineSenceEventPreviewPanel.IsClose)
@@ -770,7 +750,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
     //任务是否完成
     public bool IsEvenkLinkComplete(AccountFileInfo.EventConditionData eventCondition)
     {
-        EventConditionConfig eventConditionConfig = ConfigComponent.Instance.Get<EventConditionConfig>(eventCondition.eventCondition);
+        EventConditionConfig eventConditionConfig =
+            ConfigComponent.Instance.Get<EventConditionConfig>(eventCondition.eventCondition);
 
         if (eventCondition != null)
         {
@@ -782,14 +763,17 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
     public bool CeekEventGroupComplete(List<AccountFileInfo.EventConditionData> eventConditions)
     {
-        Map<int, List<AccountFileInfo.EventConditionData>> eventConditionDataGroup = new Map<int, List<AccountFileInfo.EventConditionData>>();
+        Map<int, List<AccountFileInfo.EventConditionData>> eventConditionDataGroup =
+            new Map<int, List<AccountFileInfo.EventConditionData>>();
 
         foreach (var eventConditionData in eventConditions)
         {
-            EventConditionConfig eventConditionConfig = ConfigComponent.Instance.Get<EventConditionConfig>(eventConditionData.eventCondition);
+            EventConditionConfig eventConditionConfig =
+                ConfigComponent.Instance.Get<EventConditionConfig>(eventConditionData.eventCondition);
             if (!eventConditionDataGroup.ContainsKey(eventConditionConfig.Operation))
             {
-                eventConditionDataGroup.Add(eventConditionConfig.Operation, new List<AccountFileInfo.EventConditionData>());
+                eventConditionDataGroup.Add(eventConditionConfig.Operation,
+                    new List<AccountFileInfo.EventConditionData>());
             }
 
             eventConditionDataGroup[eventConditionConfig.Operation].Add(eventConditionData);
@@ -836,7 +820,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
     public void CeekTaskComplete(AccountFileInfo.EventConditionData conditionData, int type, int[] value)
     {
-        EventConditionConfig eventConditionConfig = ConfigComponent.Instance.Get<EventConditionConfig>(conditionData.eventCondition);
+        EventConditionConfig eventConditionConfig =
+            ConfigComponent.Instance.Get<EventConditionConfig>(conditionData.eventCondition);
 
 
         if (IsEvenkLinkComplete(conditionData))
@@ -848,7 +833,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
             case 1:
                 if (eventConditionConfig.ConditionType == 1)
                 {
-                    conditionData.fishCount += (int)PlayerManager.Instance.BagController.GetItemCount(eventConditionConfig.ConditionPara[0]);
+                    conditionData.fishCount +=
+                        (int)PlayerManager.Instance.BagController.GetItemCount(eventConditionConfig.ConditionPara[0]);
 
                     if (IsEvenkLinkComplete(conditionData))
                     {
@@ -860,7 +846,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
             //境界检测
             case 3:
-                if (eventConditionConfig.ConditionType == 3 && PlayerManager.Instance.myHero.powerUpConfig.ID >= eventConditionConfig.ConditionPara[0])
+                if (eventConditionConfig.ConditionType == 3 && PlayerManager.Instance.myHero.powerUpConfig.ID >=
+                    eventConditionConfig.ConditionPara[0])
                 {
                     conditionData.fishCount++;
 
@@ -966,7 +953,9 @@ public class EventSystemManager : Singleton<EventSystemManager>
                 return randomValue1 <= evt.EventCount;
             //完成事件判断
             case 10:
-                AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce => ce.eventID == evt.EventValue[0]);
+                AccountFileInfo.EventList eventList =
+                    AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce =>
+                        ce.eventID == evt.EventValue[0]);
                 return eventList != null;
         }
 
@@ -990,7 +979,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
         AccountFileInfo.Instance.playerData.completeEvents.Add(eventList);
 
         PlayerManager.Instance.CurrentsmallPlaces.completionEventCount++;
-        SmallPlacesConfig smallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
+        SmallPlacesConfig smallPlacesConfig =
+            ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
         AccountFileInfo.PlacesData placesData = PlayerManager.Instance.GetPlacesData(smallPlacesConfig.PlacesId);
 
         if (placesData.progress < 100)
@@ -1012,7 +1002,8 @@ public class EventSystemManager : Singleton<EventSystemManager>
         LogTool.Log($"完成事件{eventList.eventID}");
 
         EventConfig eventConfig = ConfigComponent.Instance.Get<EventConfig>(eventList.eventID);
-        AccountFileInfo.EventList ceventList = AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce => ce.eventID == eventList.eventID);
+        AccountFileInfo.EventList ceventList =
+            AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce => ce.eventID == eventList.eventID);
 
         PlayerManager.Instance.CurrentsmallPlaces.completionEventCount++;
 
@@ -1034,8 +1025,10 @@ public class EventSystemManager : Singleton<EventSystemManager>
 
             if (pId == 0)
             {
-                SmallPlacesConfig smallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
-                AccountFileInfo.PlacesData placesData = PlayerManager.Instance.GetPlacesData(smallPlacesConfig.PlacesId);
+                SmallPlacesConfig smallPlacesConfig =
+                    ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
+                AccountFileInfo.PlacesData
+                    placesData = PlayerManager.Instance.GetPlacesData(smallPlacesConfig.PlacesId);
                 placesData.progress += eventConfig.Score;
             }
             else

+ 1 - 1
Assets/Scripts/GameUI/UI/LevelChoosePanel/LevelChoosePanel.cs

@@ -86,7 +86,7 @@ namespace Fort23.Mono
             PlacesWidget placesWidget = obj as PlacesWidget;
             //加载地图
 
-            PlacesInfoPanel.OpenPanel(placesWidget.placesConfig.ID);
+            PlacesInfoPanel.OpenPanel(placesWidget.placesConfig.ID,null);
 
             //
             // if (placesWidget.placesConfig.ID > 1 && PlayerManager.Instance.GetMapBl(placesWidget.placesConfig.ID - 1) < 100)

+ 181 - 35
Assets/Scripts/GameUI/UI/LevelChoosePanel/PlacesInfoPanel.cs

@@ -1,9 +1,12 @@
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using Core.Language;
 using Excel2Json;
 using Fort23.Core;
 using Fort23.UTool;
+using GameLogic.Combat;
+using GameLogic.Combat.CombatTool;
 
 namespace Fort23.Mono
 {
@@ -16,6 +19,9 @@ namespace Fort23.Mono
 
         List<ShopBtnWidget> _shopBtnWidgets = new List<ShopBtnWidget>();
 
+        private Action<bool> callBack;
+        private bool isChange;
+
         private void Init()
         {
             isPopUi = true;
@@ -39,12 +45,17 @@ namespace Fort23.Mono
         public async override CTask<bool> AsyncInit(object[] uiData)
         {
             PlacesId = (int)(uiData[0]);
+            callBack = uiData[1] as Action<bool>;
+
+            isChange = false;
             // smallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(PlacesId);
             placesConfig = ConfigComponent.Instance.Get<PlacesConfig>(PlacesId);
 
             foreach (var placesConfigSmallPlacersId in placesConfig.SmallPlacersIds)
             {
-                ShopBtnWidget shopBtnWidget = await UIManager.Instance.CreateGComponent<ShopBtnWidget>(null, Content);
+                ShopBtnWidget shopBtnWidget =
+                    await UIManager.Instance.CreateGComponentForObject<ShopBtnWidget>(ShopBtnWidgetGame, null, Content,
+                        isInstance: true);
                 shopBtnWidget.CustomInit(placesConfigSmallPlacersId);
                 shopBtnWidget.OnClick = OnClick;
                 _shopBtnWidgets.Add(shopBtnWidget);
@@ -56,73 +67,202 @@ namespace Fort23.Mono
             BigMapConfig bigMapConfig = ConfigComponent.Instance.Get<BigMapConfig>(placesConfig.bigMapID);
             Text_BigMapName.text = LanguageManager.Instance.Text(bigMapConfig.mapName);
             Text_PlacesName.text = LanguageManager.Instance.Text(placesConfig.placeName);
-            Text_PlacesComplteProgress.text = $"完成度:{PlayerManager.Instance.GetMapBl(placesConfig.ID)}%";
+            int triggerCount = 0;
+            foreach (var i in placesConfig.MainTaskID)
+            {
+                if (EventSystemManager.Instance.IsEventTrigger(i))
+                {
+                    triggerCount++;
+                }
+            }
+
+            Text_PlacesComplteProgress.text = $"章节事件:{triggerCount}/{placesConfig.MainTaskID.Length}";
             return await base.AsyncInit(uiData);
         }
 
         private void OnClick(ItemWidgetBasic obj)
         {
             ShopBtnWidget shopBtnWidget = obj as ShopBtnWidget;
-            toggleList.ClickWidget(shopBtnWidget.uiToggle);
 
-            smallPlacesConfig = shopBtnWidget.SmallPlacesConfig;
-        }
 
-        private async void Click_Go()
-        {
-            
-            if (smallPlacesConfig.ID == 0)
-                return;
-            AccountFileInfo.SmallPlacesData lastSmallPlacesData = PlayerManager.Instance.GetSmallPlacesData(smallPlacesConfig.ID - 1);
-            SmallPlacesConfig lastSmallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(smallPlacesConfig.ID - 1);
-            if (smallPlacesConfig.ID > 1 && (lastSmallPlacesData == null || lastSmallPlacesData.completionEventCount < lastSmallPlacesConfig.CompletionEventCount))
+            AccountFileInfo.SmallPlacesData lastSmallPlacesData =
+                PlayerManager.Instance.GetSmallPlacesData(shopBtnWidget.SmallPlacesConfig.ID - 1);
+            SmallPlacesConfig lastSmallPlacesConfig =
+                ConfigComponent.Instance.Get<SmallPlacesConfig>(shopBtnWidget.SmallPlacesConfig.ID - 1);
+            if (shopBtnWidget.SmallPlacesConfig.ID > 1 && (lastSmallPlacesData == null ||
+                                                           lastSmallPlacesData.completionEventCount <
+                                                           lastSmallPlacesConfig.CompletionEventCount))
             {
-                TipMessagePanel.OpenTipMessagePanel("上一个关卡事件完成度不足");
+                TipMessagePanel.OpenTipMessagePanel(
+                    $"[{LanguageManager.Instance.Text(shopBtnWidget.SmallPlacesConfig.placeName)}]未解锁, 完成{lastSmallPlacesConfig.CompletionEventCount}个任务后, 可解锁. ");
+
                 return;
             }
 
             if (lastSmallPlacesConfig.UnlockEnvetid != 0)
             {
-                AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce => ce.eventID == lastSmallPlacesConfig.UnlockEnvetid);
+                AccountFileInfo.EventList eventList =
+                    AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce =>
+                        ce.eventID == lastSmallPlacesConfig.UnlockEnvetid);
                 if (eventList == null || !eventList.isCompleted)
                 {
-                    TipMessagePanel.OpenTipMessagePanel("主线任务没有完成");
+                    EventConfig eventConfig =
+                        ConfigComponent.Instance.Get<EventConfig>(lastSmallPlacesConfig.UnlockEnvetid);
+                    TipMessagePanel.OpenTipMessagePanel(
+                        $"[{LanguageManager.Instance.Text(smallPlacesConfig.placeName)}]未解锁, 主线任务{eventConfig.EventName}后, 可解锁. ");
                     return;
                 }
             }
 
-            /*
-            AccountFileInfo.SmallPlacesData smallPlacesData = PlayerManager.Instance.GetSmallPlacesData(smallPlacesConfig.ID);
+            AccountFileInfo.SmallPlacesData currentSmallPlacesData =
+                PlayerManager.Instance.GetSmallPlacesData(shopBtnWidget.SmallPlacesConfig.ID);
+            if (currentSmallPlacesData == null)
+            {
+                TipMessagePanel.OpenTipMessagePanel("通过上一个地点解锁");
+                return;
+            }
 
-            if (smallPlacesData == null)
+            AccountFileInfo.SmallPlacesData nextSmallPlacesData =
+                PlayerManager.Instance.GetSmallPlacesData(shopBtnWidget.SmallPlacesConfig.ID + 1);
+            //解锁下一个地图
+            if (nextSmallPlacesData == null && IsSmallPlacesDataUlock(shopBtnWidget.SmallPlacesConfig.ID + 1))
+            {
+                Text_Go.text = "解锁下一地点";
+            }
+            else
             {
-                smallPlacesData = new AccountFileInfo.SmallPlacesData();
-                smallPlacesData.id = smallPlacesConfig.ID;
-                AccountFileInfo.Instance.playerData.smallPlacesDatas.Add(smallPlacesData);
+                Text_Go.text = "前往";
             }
 
+            toggleList.ClickWidget(shopBtnWidget.uiToggle);
+
+            smallPlacesConfig = shopBtnWidget.SmallPlacesConfig;
+            AccountFileInfo.SmallPlacesData smallPlacesData =
+                PlayerManager.Instance.GetSmallPlacesData(smallPlacesConfig.ID);
+            Slider_SmallJD.maxValue = smallPlacesConfig.CompletionEventCount;
 
-            AccountFileInfo.PlacesData currentPlacesData = PlayerManager.Instance.GetPlacesData(smallPlacesConfig.ID);
-            if (currentPlacesData == null)
+            float tansuodu = smallPlacesData == null ? 0 : smallPlacesData.completionEventCount;
+            Slider_SmallJD.value = tansuodu;
+            Text_TanSuDu.text =
+                $"[{LanguageManager.Instance.Text(smallPlacesConfig.placeName)}]探索度 {(tansuodu / smallPlacesConfig.CompletionEventCount) * 100}%";
+        }
+
+        private bool IsSmallPlacesDataUlock(int id)
+        {
+            AccountFileInfo.SmallPlacesData lastSmallPlacesData =
+                PlayerManager.Instance.GetSmallPlacesData(id - 1);
+            SmallPlacesConfig lastSmallPlacesConfig =
+                ConfigComponent.Instance.Get<SmallPlacesConfig>(id - 1);
+            if (id > 1 && (lastSmallPlacesData == null ||
+                           lastSmallPlacesData.completionEventCount <
+                           lastSmallPlacesConfig.CompletionEventCount))
             {
-                currentPlacesData = new AccountFileInfo.PlacesData();
-                currentPlacesData.id = placesConfig.ID;
-                AccountFileInfo.Instance.playerData.placesDatas.Add(currentPlacesData);
+                return false;
             }
 
-            PlayerManager.Instance.CurrentsmallPlaces = smallPlacesData;
-            */
+            if (lastSmallPlacesConfig.UnlockEnvetid != 0)
+            {
+                AccountFileInfo.EventList eventList =
+                    AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce =>
+                        ce.eventID == lastSmallPlacesConfig.UnlockEnvetid);
+                if (eventList == null || !eventList.isCompleted)
+                {
+                    return false;
+                }
+            }
+
+            return true;
+        }
+
+        private async void Click_Go()
+        {
+            if (smallPlacesConfig.ID == 0)
+                return;
+
+            AccountFileInfo.SmallPlacesData nextSmallPlacesData =
+                PlayerManager.Instance.GetSmallPlacesData(smallPlacesConfig.ID + 1);
+            //解锁下一个地图
+            if (nextSmallPlacesData == null && IsSmallPlacesDataUlock(smallPlacesConfig.ID + 1))
+            {
+                UIManager.Instance.HideUIUIPanel<LevelChoosePanel>();
+                UIManager.Instance.HideUIUIPanel(this);
+
+                //切换下一个地图
+                PlayerManager.Instance.ChangeMap(smallPlacesConfig.ID + 1);
+                isChange = true;
+                UIManager.Instance.HindCurrAllShowPanel();
+                CombatDrive.Instance.CombatController.ChangeState(CombatController.update);
+                CombatController.currActiveCombat.CombatHeroController.Flight(2, -90, 10);
+                UIManager.Instance.SetEventSystemEnable(false);
+                await TimerComponent.Instance.WaitAsync(2 * 1000 + 1200);
+                CombatDrive.Instance.CombatController.ChangeState(CombatController.idle);
+                UIManager.Instance.SetEventSystemEnable(true);
+                UIManager.Instance.ShowLastHindAllShowPanel();
+                callBack?.Invoke(true);
+                callBack = null;
+            }
+            else
+            {
+                AccountFileInfo.SmallPlacesData lastSmallPlacesData =
+                    PlayerManager.Instance.GetSmallPlacesData(smallPlacesConfig.ID - 1);
+                SmallPlacesConfig lastSmallPlacesConfig =
+                    ConfigComponent.Instance.Get<SmallPlacesConfig>(smallPlacesConfig.ID - 1);
+                if (smallPlacesConfig.ID > 1 && (lastSmallPlacesData == null ||
+                                                 lastSmallPlacesData.completionEventCount <
+                                                 lastSmallPlacesConfig.CompletionEventCount))
+                {
+                    TipMessagePanel.OpenTipMessagePanel(
+                        $"[{LanguageManager.Instance.Text(smallPlacesConfig.placeName)}]未解锁, 完成{lastSmallPlacesConfig.CompletionEventCount}个任务后, 可解锁. ");
+
+                    return;
+                }
+
+                if (lastSmallPlacesConfig.UnlockEnvetid != 0)
+                {
+                    AccountFileInfo.EventList eventList =
+                        AccountFileInfo.Instance.playerData.completeEvents.FirstOrDefault(ce =>
+                            ce.eventID == lastSmallPlacesConfig.UnlockEnvetid);
+                    EventConfig eventConfig =
+                        ConfigComponent.Instance.Get<EventConfig>(lastSmallPlacesConfig.UnlockEnvetid);
+                    if (eventList == null || !eventList.isCompleted)
+                    {
+                        TipMessagePanel.OpenTipMessagePanel(
+                            $"[{LanguageManager.Instance.Text(smallPlacesConfig.placeName)}]未解锁, 主线任务{eventConfig.EventName}后, 可解锁. ");
 
-            PlayerManager.Instance.ChangeMap(smallPlacesConfig.ID);
+                        return;
+                    }
+                }
 
-            UIManager.Instance.HideUIUIPanel<LevelChoosePanel>();
-            UIManager.Instance.HideUIUIPanel(this);
-            //EventManager.Instance.Dispatch(CustomEventType.ChangeMap, null);
+                if (smallPlacesConfig.ID == PlayerManager.Instance.CurrentsmallPlaces.id)
+                {
+                    UIManager.Instance.HideUIUIPanel<LevelChoosePanel>();
+                    UIManager.Instance.HideUIUIPanel(this);
+                    return;
+                }
+
+                isChange = true;
+                PlayerManager.Instance.ChangeMap(smallPlacesConfig.ID);
+
+                UIManager.Instance.HideUIUIPanel<LevelChoosePanel>();
+                UIManager.Instance.HideUIUIPanel(this);
+
+                UIManager.Instance.HindCurrAllShowPanel();
+                CombatDrive.Instance.CombatController.ChangeState(CombatController.update);
+                CombatController.currActiveCombat.CombatHeroController.Flight(2, -90, 10);
+                UIManager.Instance.SetEventSystemEnable(false);
+                await TimerComponent.Instance.WaitAsync(2 * 1000 + 1200);
+                CombatDrive.Instance.CombatController.ChangeState(CombatController.idle);
+                UIManager.Instance.SetEventSystemEnable(true);
+                UIManager.Instance.ShowLastHindAllShowPanel();
+                callBack?.Invoke(true);
+                callBack = null;
+            }
         }
 
-        public static async CTask OpenPanel(int placesId)
+        public static async CTask OpenPanel(int placesId, Action<bool> callBack)
         {
-            await UIManager.Instance.LoadAndOpenPanel<PlacesInfoPanel>(null, UILayer.Top, uiData: new object[] { placesId }, isShowBG: true);
+            await UIManager.Instance.LoadAndOpenPanel<PlacesInfoPanel>(null, UILayer.Top,
+                uiData: new object[] { placesId, callBack }, isShowBG: true);
         }
 
         public override void Close()
@@ -136,6 +276,12 @@ namespace Fort23.Mono
 
             smallPlacesConfig = default;
 
+            if (!isChange)
+            {
+                callBack?.Invoke(false);
+                callBack = null;
+            }
+
             base.Close();
         }
     }

+ 44 - 0
Assets/Scripts/GameUI/UI/LevelChoosePanel/PlacesInfoPanelData.cs

@@ -96,6 +96,50 @@ namespace Fort23.Mono
 	      return _toggleList;
 	     }
 	   }
+	  private GameObject _ShopBtnWidgetGame;
+	  public GameObject ShopBtnWidgetGame
+	   {
+	   get{
+	      if (_ShopBtnWidgetGame == null)
+	       {
+	         _ShopBtnWidgetGame  = GetUIUnit<GameObject>("ShopBtnWidgetGame"); 
+	       }
+	      return _ShopBtnWidgetGame;
+	     }
+	   }
+	  private Slider _Slider_SmallJD;
+	  public Slider Slider_SmallJD
+	   {
+	   get{
+	      if (_Slider_SmallJD == null)
+	       {
+	         _Slider_SmallJD  = GetUIUnit<Slider>("Slider_SmallJD"); 
+	       }
+	      return _Slider_SmallJD;
+	     }
+	   }
+	  private Text _Text_TanSuDu;
+	  public Text Text_TanSuDu
+	   {
+	   get{
+	      if (_Text_TanSuDu == null)
+	       {
+	         _Text_TanSuDu  = GetUIUnit<Text>("Text_TanSuDu"); 
+	       }
+	      return _Text_TanSuDu;
+	     }
+	   }
+	  private Text _Text_Go;
+	  public Text Text_Go
+	   {
+	   get{
+	      if (_Text_Go == null)
+	       {
+	         _Text_Go  = GetUIUnit<Text>("Text_Go"); 
+	       }
+	      return _Text_Go;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{

+ 26 - 10
Assets/Scripts/GameUI/UI/MainPanel/MainPanel.cs

@@ -50,7 +50,7 @@ namespace Fort23.Mono
             {
                 await PlayerGuideManager.Instance.SetGuid(1);
             }
-            
+
             base.GetFocus();
         }
 
@@ -110,6 +110,13 @@ namespace Fort23.Mono
 
             CameraSelect.onValueChanged.AddListener(CameraSelect_onValueChanged);
 
+            Btn_ChangeMap.onClick.AddListener(() =>
+            {
+                SmallPlacesConfig smallPlacesConfig =
+                    ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
+                PlacesInfoPanel.OpenPanel(smallPlacesConfig.PlacesId, null);
+            });
+
 
             Btn_Event.onClick.AddListener(() =>
             {
@@ -124,7 +131,8 @@ namespace Fort23.Mono
 
             Btn_StartEvent.onClick.AddListener(() =>
             {
-                AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e => e.guid == AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId);
+                AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e =>
+                    e.guid == AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId);
                 if (eventList != null)
                 {
                     EventSystemManager.Instance.CancelEvent();
@@ -152,7 +160,8 @@ namespace Fort23.Mono
         {
             await base.Show();
 
-            SmallPlacesConfig smallPlacesConfig = ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
+            SmallPlacesConfig smallPlacesConfig =
+                ConfigComponent.Instance.Get<SmallPlacesConfig>(PlayerManager.Instance.CurrentsmallPlaces.id);
             Slider_SmallJD.maxValue = smallPlacesConfig.CompletionEventCount;
             Slider_SmallJD.value = PlayerManager.Instance.CurrentsmallPlaces.completionEventCount;
 
@@ -236,30 +245,37 @@ namespace Fort23.Mono
 
             _shengShiConditionWidgets.Clear();
 
-            AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e => e.guid == AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId);
+            AccountFileInfo.EventList eventList = AccountFileInfo.Instance.playerData.eventList.FirstOrDefault(e =>
+                e.guid == AccountFileInfo.Instance.playerData.CurrentZuiZhongEventListId);
             if (eventList != null)
             {
                 var randomEventConfig = ConfigComponent.Instance.Get<EventConfig>(eventList.eventID);
                 Text_EventName.text = LanguageManager.Instance.Text(randomEventConfig.EventName);
                 Text_EventTag.text = EventHelper.GetEventType(randomEventConfig.EventTag);
 
-                AccountFileInfo.EventLinkData eventLinkData = eventList.eventLinks.FirstOrDefault(el => el.eventLinkId == eventList.curStep);
+                AccountFileInfo.EventLinkData eventLinkData =
+                    eventList.eventLinks.FirstOrDefault(el => el.eventLinkId == eventList.curStep);
 
                 EventLinkConfig evenkConfig = ConfigComponent.Instance.Get<EventLinkConfig>(eventLinkData.eventLinkId);
 
-                if (eventLinkData != null && eventLinkData.eventConditions != null && eventLinkData.eventConditions.Count > 0)
+                if (eventLinkData != null && eventLinkData.eventConditions != null &&
+                    eventLinkData.eventConditions.Count > 0)
                 {
                     foreach (var eventConditionData in eventLinkData.eventConditions)
                     {
-                        ShengShiConditionWidget shengShiConditionWidget = await UIManager.Instance.CreateGComponent<ShengShiConditionWidget>(null, EventConditionRoot);
+                        ShengShiConditionWidget shengShiConditionWidget =
+                            await UIManager.Instance.CreateGComponent<ShengShiConditionWidget>(null,
+                                EventConditionRoot);
                         shengShiConditionWidget.CustomInit(eventConditionData);
                         _shengShiConditionWidgets.Add(shengShiConditionWidget);
                     }
                 }
                 else if (evenkConfig.EventConditionMessage != 0)
                 {
-                    ShengShiConditionWidget shengShiConditionWidget = await UIManager.Instance.CreateGComponent<ShengShiConditionWidget>(null, EventConditionRoot);
-                    shengShiConditionWidget.CustomInit(LanguageManager.Instance.Text(evenkConfig.EventConditionMessage));
+                    ShengShiConditionWidget shengShiConditionWidget =
+                        await UIManager.Instance.CreateGComponent<ShengShiConditionWidget>(null, EventConditionRoot);
+                    shengShiConditionWidget.CustomInit(
+                        LanguageManager.Instance.Text(evenkConfig.EventConditionMessage));
                     _shengShiConditionWidgets.Add(shengShiConditionWidget);
                 }
             }
@@ -290,7 +306,7 @@ namespace Fort23.Mono
 
         public async static CTask<MainPanel> OpenPanel()
         {
-            MainPanel mainPanel =  await UIManager.Instance.LoadAndOpenPanel<MainPanel>(null);
+            MainPanel mainPanel = await UIManager.Instance.LoadAndOpenPanel<MainPanel>(null);
             return mainPanel;
         }
 

+ 11 - 0
Assets/Scripts/GameUI/UI/MainPanel/MainPanelData.cs

@@ -239,6 +239,17 @@ namespace Fort23.Mono
 	      return _Slider_SmallJD;
 	     }
 	   }
+	  private Button _Btn_ChangeMap;
+	  public Button Btn_ChangeMap
+	   {
+	   get{
+	      if (_Btn_ChangeMap == null)
+	       {
+	         _Btn_ChangeMap  = GetUIUnit<Button>("Btn_ChangeMap"); 
+	       }
+	      return _Btn_ChangeMap;
+	     }
+	   }
 	  #endregion 自定义数据结束 
 	 public override async CTask SetUIGameObject(GameObject gObjectPoolInterface)
 	{