Skip to content

Commit 31759d0

Browse files
committed
[增加]1. 增加新版本的UI接口适配
1 parent 423ffdb commit 31759d0

File tree

10 files changed

+272
-216
lines changed

10 files changed

+272
-216
lines changed

Assets/Hotfix/HotfixLauncher.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,8 @@ private static async void LoadUI()
3434
#if ENABLE_UI_FAIRYGUI
3535
GameApp.FUIPackage.AddPackageAsync(Utility.Asset.Path.GetUIPackagePath(FUIPackage.UICommon));
3636
GameApp.FUIPackage.AddPackageAsync(Utility.Asset.Path.GetUIPackagePath(FUIPackage.UICommonAvatar));
37-
await GameApp.UI.OpenUIFormAsync<UILogin>(Utility.Asset.Path.GetUIPath(FUIPackage.UILogin), UIGroupConstants.Floor.Name);
38-
#elif ENABLE_UI_UGUI
39-
await GameApp.UI.OpenUIFormAsync<UILogin>(Utility.Asset.Path.GetUIPath(nameof(UILogin)), UIGroupConstants.Floor.Name);
4037
#endif
41-
38+
await GameApp.UI.OpenAsync<UILogin>();
4239
var item = GameApp.Config.GetConfig<TbSoundsConfig>().FirstOrDefault;
4340
Log.Info(item);
4441
}

Assets/Hotfix/UI/Logic/UIBag/UIBag.Logic.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using System.Collections.Generic;
99
using FairyGUI;
1010
using GameFrameX.Event.Runtime;
11+
using GameFrameX.UI.Runtime;
1112
using Hotfix.Config;
1213
using Hotfix.Config.Tables;
1314
using Hotfix.Events;
@@ -37,6 +38,12 @@ public ItemTypeData(ItemType type, string name)
3738
}
3839
}
3940

41+
public override void OnAwake()
42+
{
43+
UIGroup = GameApp.UI.GetUIGroup(UIGroupConstants.Window.Name);
44+
base.OnAwake();
45+
}
46+
4047
private List<ItemTypeData> Tabs = new List<ItemTypeData>();
4148
List<object> _bagItems = new List<object>();
4249
private BagItem _selectBagItem = null;
Lines changed: 98 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -1,93 +1,99 @@
1-
using System.Collections.Generic;
2-
using System.Net;
3-
using GameFrameX;
4-
using GameFrameX.Event.Runtime;
5-
using GameFrameX.GlobalConfig.Runtime;
6-
#if ENABLE_UI_FAIRYGUI
7-
using GameFrameX.UI.FairyGUI.Runtime;
8-
#endif
9-
using GameFrameX.Network.Runtime;
10-
using GameFrameX.Runtime;
11-
using GameFrameX.UI.Runtime;
12-
#if ENABLE_UI_UGUI
13-
using GameFrameX.UI.UGUI.Runtime;
14-
#endif
15-
using Hotfix.Manager;
16-
using Hotfix.Network;
17-
using Hotfix.Proto;
18-
using UnityEngine;
19-
20-
namespace Hotfix.UI
21-
{
22-
public partial class UILogin
23-
{
24-
public override void OnOpen(object userData)
25-
{
26-
m_enter.onClick.Set(OnLoginClick);
27-
base.OnOpen(userData);
28-
}
29-
30-
private void OnLoginClick()
31-
{
32-
Login();
33-
}
34-
35-
private async void Login()
36-
{
37-
if (m_UserName.text.IsNullOrWhiteSpace() || m_Password.text.IsNullOrWhiteSpace())
38-
{
39-
m_ErrorText.text = "用户名或密码不能为空";
40-
return;
41-
}
42-
43-
44-
#region 账号登录
45-
46-
var req = new ReqLogin
47-
{
48-
SdkType = 0,
49-
SdkToken = "",
50-
UserName = m_UserName.text,
51-
Password = m_Password.text,
52-
Device = SystemInfo.deviceUniqueIdentifier
53-
};
54-
req.Platform = PathHelper.GetPlatformName;
55-
56-
var respLogin = await GameApp.Web.Post<RespLogin>($"http://127.0.0.1:28080/game/api/{nameof(ReqLogin).ConvertToSnakeCase()}", req);
57-
if (respLogin.ErrorCode > 0)
58-
{
59-
Log.Error("登录失败,错误信息:" + respLogin.ErrorCode);
60-
return;
61-
}
62-
63-
#endregion
64-
65-
#region 获取角色列表
66-
67-
ReqPlayerList reqPlayerList = new ReqPlayerList();
68-
69-
reqPlayerList.Id = respLogin.Id;
70-
var respPlayerList = await GameApp.Web.Post<RespPlayerList>($"http://127.0.0.1:28080/game/api/{nameof(ReqPlayerList).ConvertToSnakeCase()}", reqPlayerList);
71-
if (respPlayerList.ErrorCode > 0)
72-
{
73-
Log.Error("登录失败,错误信息:" + respPlayerList.ErrorCode);
74-
return;
75-
}
76-
77-
AccountManager.Instance.PlayerList = respPlayerList.PlayerList;
78-
79-
#endregion
80-
81-
if (respPlayerList.PlayerList.Count > 0)
82-
{
83-
await GameApp.UI.OpenUIFormAsync<UIPlayerList>(Utility.Asset.Path.GetUIPath(nameof(UILogin)), UIGroupConstants.Floor.Name, respLogin, true);
84-
}
85-
else
86-
{
87-
await GameApp.UI.OpenUIFormAsync<UIPlayerCreate>(Utility.Asset.Path.GetUIPath(nameof(UILogin)), UIGroupConstants.Floor.Name, respLogin, true);
88-
}
89-
90-
GameApp.UI.CloseUIForm(this);
91-
}
92-
}
1+
using System.Collections.Generic;
2+
using System.Net;
3+
using GameFrameX;
4+
using GameFrameX.Event.Runtime;
5+
using GameFrameX.GlobalConfig.Runtime;
6+
#if ENABLE_UI_FAIRYGUI
7+
using GameFrameX.UI.FairyGUI.Runtime;
8+
#endif
9+
using GameFrameX.Network.Runtime;
10+
using GameFrameX.Runtime;
11+
using GameFrameX.UI.Runtime;
12+
#if ENABLE_UI_UGUI
13+
using GameFrameX.UI.UGUI.Runtime;
14+
#endif
15+
using Hotfix.Manager;
16+
using Hotfix.Network;
17+
using Hotfix.Proto;
18+
using UnityEngine;
19+
20+
namespace Hotfix.UI
21+
{
22+
public partial class UILogin
23+
{
24+
public override void OnAwake()
25+
{
26+
UIGroup = GameApp.UI.GetUIGroup(UIGroupConstants.Normal.Name);
27+
base.OnAwake();
28+
}
29+
30+
public override void OnOpen(object userData)
31+
{
32+
m_enter.onClick.Set(OnLoginClick);
33+
base.OnOpen(userData);
34+
}
35+
36+
private void OnLoginClick()
37+
{
38+
Login();
39+
}
40+
41+
private async void Login()
42+
{
43+
if (m_UserName.text.IsNullOrWhiteSpace() || m_Password.text.IsNullOrWhiteSpace())
44+
{
45+
m_ErrorText.text = "用户名或密码不能为空";
46+
return;
47+
}
48+
49+
50+
#region 账号登录
51+
52+
var req = new ReqLogin
53+
{
54+
SdkType = 0,
55+
SdkToken = "",
56+
UserName = m_UserName.text,
57+
Password = m_Password.text,
58+
Device = SystemInfo.deviceUniqueIdentifier
59+
};
60+
req.Platform = PathHelper.GetPlatformName;
61+
62+
var respLogin = await GameApp.Web.Post<RespLogin>($"http://127.0.0.1:28080/game/api/{nameof(ReqLogin).ConvertToSnakeCase()}", req);
63+
if (respLogin.ErrorCode > 0)
64+
{
65+
Log.Error("登录失败,错误信息:" + respLogin.ErrorCode);
66+
return;
67+
}
68+
69+
#endregion
70+
71+
#region 获取角色列表
72+
73+
ReqPlayerList reqPlayerList = new ReqPlayerList();
74+
75+
reqPlayerList.Id = respLogin.Id;
76+
var respPlayerList = await GameApp.Web.Post<RespPlayerList>($"http://127.0.0.1:28080/game/api/{nameof(ReqPlayerList).ConvertToSnakeCase()}", reqPlayerList);
77+
if (respPlayerList.ErrorCode > 0)
78+
{
79+
Log.Error("登录失败,错误信息:" + respPlayerList.ErrorCode);
80+
return;
81+
}
82+
83+
AccountManager.Instance.PlayerList = respPlayerList.PlayerList;
84+
85+
#endregion
86+
87+
if (respPlayerList.PlayerList.Count > 0)
88+
{
89+
await GameApp.UI.OpenFullScreenAsync<UIPlayerList>(Utility.Asset.Path.GetUIPath(nameof(UILogin)), respLogin);
90+
}
91+
else
92+
{
93+
await GameApp.UI.OpenFullScreenAsync<UIPlayerCreate>(Utility.Asset.Path.GetUIPath(nameof(UILogin)), respLogin);
94+
}
95+
96+
GameApp.UI.CloseUIForm(this);
97+
}
98+
}
9399
}
Lines changed: 84 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,79 +1,85 @@
1-
using System.Collections.Generic;
2-
using GameFrameX;
3-
using GameFrameX.GlobalConfig.Runtime;
4-
#if ENABLE_UI_FAIRYGUI
5-
using GameFrameX.UI.FairyGUI.Runtime;
6-
#endif
7-
using GameFrameX.Runtime;
8-
using GameFrameX.UI.Runtime;
9-
using Hotfix.Manager;
10-
#if ENABLE_UI_UGUI
11-
using GameFrameX.UI.UGUI.Runtime;
12-
#endif
13-
using Hotfix.Proto;
14-
15-
namespace Hotfix.UI
16-
{
17-
public partial class UIPlayerCreate
18-
{
19-
ReqPlayerCreate req;
20-
21-
public override void OnOpen(object userData)
22-
{
23-
req = new ReqPlayerCreate();
24-
base.OnOpen(userData);
25-
26-
RespLogin respLogin = userData as RespLogin;
27-
this.m_enter.onClick.Set(OnCreateButtonClick);
28-
req.Id = respLogin.Id;
29-
}
30-
31-
private async void OnCreateButtonClick()
32-
{
33-
if (m_UserName.text.IsNullOrWhiteSpace())
34-
{
35-
m_ErrorText.text = "角色名不能为空";
36-
return;
37-
}
38-
39-
req.Name = m_UserName.text;
40-
41-
#region 创建角色
42-
43-
var respPlayerCreate = await GameApp.Web.Post<RespPlayerCreate>($"http://127.0.0.1:28080/game/api/{nameof(ReqPlayerCreate).ConvertToSnakeCase()}", req);
44-
45-
if (respPlayerCreate.ErrorCode > 0)
46-
{
47-
Log.Error("登录失败,错误信息:" + respPlayerCreate.ErrorCode);
48-
return;
49-
}
50-
51-
if (respPlayerCreate.PlayerInfo != null)
52-
{
53-
Log.Info("创建角色成功");
54-
}
55-
56-
#endregion
57-
58-
#region 获取角色列表
59-
60-
ReqPlayerList reqPlayerList = new ReqPlayerList();
61-
62-
reqPlayerList.Id = req.Id;
63-
var respPlayerList = await GameApp.Web.Post<RespPlayerList>($"http://127.0.0.1:28080/game/api/{nameof(ReqPlayerList).ConvertToSnakeCase()}", reqPlayerList);
64-
65-
if (respPlayerList.ErrorCode > 0)
66-
{
67-
Log.Error("登录失败,错误信息:" + respPlayerList.ErrorCode);
68-
return;
69-
}
70-
71-
AccountManager.Instance.PlayerList = respPlayerList.PlayerList;
72-
73-
#endregion
74-
75-
await GameApp.UI.OpenUIFormAsync<UIPlayerList>(Utility.Asset.Path.GetUIPath(nameof(UILogin)), UIGroupConstants.Floor.Name, UserData, true);
76-
GameApp.UI.CloseUIForm(this);
77-
}
78-
}
1+
using System.Collections.Generic;
2+
using GameFrameX;
3+
using GameFrameX.GlobalConfig.Runtime;
4+
#if ENABLE_UI_FAIRYGUI
5+
using GameFrameX.UI.FairyGUI.Runtime;
6+
#endif
7+
using GameFrameX.Runtime;
8+
using GameFrameX.UI.Runtime;
9+
using Hotfix.Manager;
10+
#if ENABLE_UI_UGUI
11+
using GameFrameX.UI.UGUI.Runtime;
12+
#endif
13+
using Hotfix.Proto;
14+
15+
namespace Hotfix.UI
16+
{
17+
public partial class UIPlayerCreate
18+
{
19+
public override void OnAwake()
20+
{
21+
UIGroup = GameApp.UI.GetUIGroup(UIGroupConstants.Normal.Name);
22+
base.OnAwake();
23+
}
24+
25+
ReqPlayerCreate req;
26+
27+
public override void OnOpen(object userData)
28+
{
29+
req = new ReqPlayerCreate();
30+
base.OnOpen(userData);
31+
32+
RespLogin respLogin = userData as RespLogin;
33+
this.m_enter.onClick.Set(OnCreateButtonClick);
34+
req.Id = respLogin.Id;
35+
}
36+
37+
private async void OnCreateButtonClick()
38+
{
39+
if (m_UserName.text.IsNullOrWhiteSpace())
40+
{
41+
m_ErrorText.text = "角色名不能为空";
42+
return;
43+
}
44+
45+
req.Name = m_UserName.text;
46+
47+
#region 创建角色
48+
49+
var respPlayerCreate = await GameApp.Web.Post<RespPlayerCreate>($"http://127.0.0.1:28080/game/api/{nameof(ReqPlayerCreate).ConvertToSnakeCase()}", req);
50+
51+
if (respPlayerCreate.ErrorCode > 0)
52+
{
53+
Log.Error("登录失败,错误信息:" + respPlayerCreate.ErrorCode);
54+
return;
55+
}
56+
57+
if (respPlayerCreate.PlayerInfo != null)
58+
{
59+
Log.Info("创建角色成功");
60+
}
61+
62+
#endregion
63+
64+
#region 获取角色列表
65+
66+
ReqPlayerList reqPlayerList = new ReqPlayerList();
67+
68+
reqPlayerList.Id = req.Id;
69+
var respPlayerList = await GameApp.Web.Post<RespPlayerList>($"http://127.0.0.1:28080/game/api/{nameof(ReqPlayerList).ConvertToSnakeCase()}", reqPlayerList);
70+
71+
if (respPlayerList.ErrorCode > 0)
72+
{
73+
Log.Error("登录失败,错误信息:" + respPlayerList.ErrorCode);
74+
return;
75+
}
76+
77+
AccountManager.Instance.PlayerList = respPlayerList.PlayerList;
78+
79+
#endregion
80+
81+
await GameApp.UI.OpenFullScreenAsync<UIPlayerList>(Utility.Asset.Path.GetUIPath(nameof(UILogin)), UserData);
82+
GameApp.UI.CloseUIForm(this);
83+
}
84+
}
7985
}

0 commit comments

Comments
 (0)