1- using System . Net ;
1+ using System . Collections . Generic ;
2+ using System . Net ;
23using GameFrameX ;
34using GameFrameX . Event . Runtime ;
5+ using GameFrameX . GlobalConfig . Runtime ;
46#if ENABLE_UI_FAIRYGUI
57using GameFrameX . UI . FairyGUI . Runtime ;
68#endif
1113using GameFrameX . UI . UGUI . Runtime ;
1214#endif
1315using Hotfix . Config . item ;
16+ using Hotfix . Manager ;
1417using Hotfix . Network ;
1518using Hotfix . Proto ;
1619using UnityEngine ;
@@ -19,9 +22,7 @@ namespace Hotfix.UI
1922{
2023 public partial class UILogin
2124 {
22- private static INetworkChannel networkChannel ;
23- public static string serverIp = "127.0.0.1" ;
24- public static int serverPort = 29100 ;
25+
2526
2627 public override void OnOpen ( object userData )
2728 {
@@ -31,24 +32,9 @@ public override void OnOpen(object userData)
3132
3233 private void OnLoginClick ( )
3334 {
34- if ( networkChannel != null && networkChannel . Connected )
35- {
36- Login ( ) ;
37- return ;
38- }
39-
40- if ( networkChannel != null && GameApp . Network . HasNetworkChannel ( "network" ) && ! networkChannel . Connected )
41- {
42- GameApp . Network . DestroyNetworkChannel ( "network" ) ;
43- }
35+ Login ( ) ;
36+ return ;
4437
45- networkChannel = GameApp . Network . CreateNetworkChannel ( "network" , new DefaultNetworkChannelHelper ( ) ) ;
46- // 注册心跳消息
47- DefaultPacketHeartBeatHandler packetSendHeaderHandler = new DefaultPacketHeartBeatHandler ( ) ;
48- networkChannel . RegisterHeartBeatHandler ( packetSendHeaderHandler ) ;
49- networkChannel . Connect ( IPAddress . Parse ( serverIp ) , serverPort ) ;
50- GameApp . Event . CheckSubscribe ( NetworkConnectedEventArgs . EventId , OnNetworkConnected ) ;
51- GameApp . Event . CheckSubscribe ( NetworkClosedEventArgs . EventId , OnNetworkClosed ) ;
5238 }
5339
5440 private async void Login ( )
@@ -60,6 +46,8 @@ private async void Login()
6046 }
6147
6248
49+ #region 账号登录
50+
6351 var req = new ReqLogin
6452 {
6553 SdkType = 0 ,
@@ -70,13 +58,41 @@ private async void Login()
7058 } ;
7159 req . Platform = PathHelper . GetPlatformName ;
7260
73- RespLogin respLogin = await networkChannel . Call < RespLogin > ( req ) ;
74- Log . Info ( respLogin ) ;
61+ var respLoginWebResult = await GameApp . Web . PostToString ( $ "http://127.0.0.1:28080/game/api/{ nameof ( ReqLogin ) } ", Utility . Json . ToObject < Dictionary < string , object > > ( Utility . Json . ToJson ( req ) ) ) ;
62+ HttpJsonResult respLoginHttpJsonResult = Utility . Json . ToObject < HttpJsonResult > ( respLoginWebResult . Result ) ;
63+ if ( respLoginHttpJsonResult . Code > 0 )
64+ {
65+ Log . Error ( "登录失败,错误信息:" + respLoginHttpJsonResult . Message ) ;
66+ return ;
67+ }
68+
69+ Log . Info ( respLoginWebResult . Result ) ;
70+ Log . Info ( respLoginHttpJsonResult . Data ) ;
71+ var respLogin = Utility . Json . ToObject < RespLogin > ( respLoginHttpJsonResult . Data ) ;
72+
73+ #endregion
74+
75+ #region 获取角色列表
76+
7577 ReqPlayerList reqPlayerList = new ReqPlayerList ( ) ;
7678
7779 reqPlayerList . Id = respLogin . Id ;
80+ var respPlayerListWebResult = await GameApp . Web . PostToString ( $ "http://127.0.0.1:28080/game/api/{ nameof ( ReqPlayerList ) } ", Utility . Json . ToObject < Dictionary < string , object > > ( Utility . Json . ToJson ( reqPlayerList ) ) ) ;
81+ HttpJsonResult respPlayerListHttpJsonResult = Utility . Json . ToObject < HttpJsonResult > ( respPlayerListWebResult . Result ) ;
82+ if ( respPlayerListHttpJsonResult . Code > 0 )
83+ {
84+ Log . Error ( "登录失败,错误信息:" + respPlayerListHttpJsonResult . Message ) ;
85+ return ;
86+ }
87+
88+ Log . Info ( respPlayerListWebResult . Result ) ;
89+ Log . Info ( respPlayerListHttpJsonResult . Data ) ;
90+
91+ var respPlayerList = Utility . Json . ToObject < RespPlayerList > ( respPlayerListHttpJsonResult . Data ) ;
92+ AccountManager . Instance . PlayerList = respPlayerList . PlayerList ;
93+
94+ #endregion
7895
79- var respPlayerList = await networkChannel . Call < RespPlayerList > ( reqPlayerList ) ;
8096 if ( respPlayerList . PlayerList . Count > 0 )
8197 {
8298 await GameApp . UI . OpenUIFormAsync < UIPlayerList > ( Utility . Asset . Path . GetUIPath ( nameof ( UILogin ) ) , UIGroupConstants . Floor . Name , respLogin , true ) ;
@@ -86,19 +102,7 @@ private async void Login()
86102 await GameApp . UI . OpenUIFormAsync < UIPlayerCreate > ( Utility . Asset . Path . GetUIPath ( nameof ( UILogin ) ) , UIGroupConstants . Floor . Name , respLogin , true ) ;
87103 }
88104
89- // await GameApp.UI.OpenUIFormAsync<UIMain>(Utility.Asset.Path.GetUIPath(nameof(UIMain)), UIGroupConstants.Floor.Name);
90105 GameApp . UI . CloseUIForm ( this ) ;
91106 }
92-
93- private static void OnNetworkClosed ( object sender , GameEventArgs e )
94- {
95- Log . Info ( nameof ( OnNetworkClosed ) ) ;
96- }
97-
98- private void OnNetworkConnected ( object sender , GameEventArgs e )
99- {
100- Login ( ) ;
101- Log . Info ( nameof ( OnNetworkConnected ) ) ;
102- }
103107 }
104108}
0 commit comments