为随机角色卡补 hover 反向链路
新增 SelectRoleClearEventArgs:hover 随机卡时清空选中状态,让上方属性区回到 _randomRoleCard。 - SelectRoleForm.OnRandomHoverEnter 上报事件 - SelectRoleUseCase.ClearSelection 重置 SelectedRoleId 并重建 RawData - SelectRoleController 订阅事件并刷新 Context - SelectRoleForm.prefab 随机卡 _onPointerEnterAction 绑定新方法
This commit is contained in:
@@ -23,6 +23,7 @@ namespace SepCore.UI
|
||||
{
|
||||
GameEntry.Event.Subscribe(SelectRoleReturnEventArgs.EventId, OnSelectRoleReturn);
|
||||
GameEntry.Event.Subscribe(SelectRoleHoverEventArgs.EventId, OnSelectRoleHover);
|
||||
GameEntry.Event.Subscribe(SelectRoleClearEventArgs.EventId, OnSelectRoleClear);
|
||||
GameEntry.Event.Subscribe(SelectRoleConfirmEventArgs.EventId, OnSelectRoleConfirm);
|
||||
}
|
||||
|
||||
@@ -30,6 +31,7 @@ namespace SepCore.UI
|
||||
{
|
||||
GameEntry.Event.Unsubscribe(SelectRoleReturnEventArgs.EventId, OnSelectRoleReturn);
|
||||
GameEntry.Event.Unsubscribe(SelectRoleHoverEventArgs.EventId, OnSelectRoleHover);
|
||||
GameEntry.Event.Unsubscribe(SelectRoleClearEventArgs.EventId, OnSelectRoleClear);
|
||||
GameEntry.Event.Unsubscribe(SelectRoleConfirmEventArgs.EventId, OnSelectRoleConfirm);
|
||||
}
|
||||
|
||||
@@ -170,6 +172,33 @@ namespace SepCore.UI
|
||||
await OpenUIAsync(rawData);
|
||||
}
|
||||
|
||||
private void OnSelectRoleClear(object sender, GameEventArgs e)
|
||||
{
|
||||
if (e is not SelectRoleClearEventArgs)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!IsCurrentFormEventSender(sender))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
OnSelectRoleClearAsync().Forget();
|
||||
}
|
||||
|
||||
private async UniTaskVoid OnSelectRoleClearAsync()
|
||||
{
|
||||
if (_useCase == null)
|
||||
{
|
||||
Log.Error("SelectRoleController.OnSelectRoleClearAsync() useCase is null.");
|
||||
return;
|
||||
}
|
||||
|
||||
SelectRoleRawData rawData = _useCase.ClearSelection();
|
||||
await OpenUIAsync(rawData);
|
||||
}
|
||||
|
||||
private void OnSelectRoleConfirm(object sender, GameEventArgs e)
|
||||
{
|
||||
if (e is not SelectRoleConfirmEventArgs)
|
||||
|
||||
Reference in New Issue
Block a user