fix:1、添加主题更换。2、修复bug

This commit is contained in:
2026-06-16 10:22:11 +08:00
parent 13f8d572c4
commit 19efcb09fa
45 changed files with 877 additions and 323 deletions
@@ -71,7 +71,8 @@ namespace ChillConnect
private ArrowConfig _currentTipArrow;
// 手指图标偏移(微调位置)
private readonly Vector2 _fingerOffset = new Vector2(-60, -60);
// 所有网格圆点实例列表,用于批量改色/清理
private List<ArrorPoint> _gridDotList = new List<ArrorPoint>();
#region
// 缩放阈值(滑动条左右边界对应这两个值)
@@ -348,16 +349,16 @@ namespace ChillConnect
ui.text_level.SetVar("lv", GameHelper.GetLevel().ToString()).FlushVars();
// 关闭按钮
ui.btn_close.SetClick(() => { CtrlCloseUI(); });
ui.btn_clear.SetClick(OnClickDeleteItem);
ui.btn_hint.SetClick(OnClickHint);
// 按钮点击事件绑定
OnBtnClickBindEvent();
_fingerTipObj = com_finger.CreateInstance();
_viewContainer.AddChild(_fingerTipObj);
_fingerTipObj.visible = false;
_currentTipArrow = null;
_zoomSlider = ui.zoomSlide;
_zoomSlider = ui.com_bottom.zoomSlide;
// 2. 绑定滑动条拖动回调
_zoomSlider.onChanged.Add(OnZoomSliderChange);
// 3. 容器初始缩放、位置
@@ -429,6 +430,24 @@ namespace ChillConnect
#endregion
#region UI相关
private void OnBtnClickBindEvent()
{
ui.btn_close.SetClick(CtrlCloseUI);
ui.com_bottom.btn_clear.SetClick(OnClickDeleteItem);
ui.com_bottom.btn_hint.SetClick(OnClickHint);
ui.com_bottom.btn_skin.SetClick(() => { uiCtrlDispatcher.Dispatch(UICtrlMsg.ArrowThemeUI_Open); });
ui.btn_petty.SetClick(() => { uiCtrlDispatcher.Dispatch(UICtrlMsg.PettyAwardUI_Open); });
ui.btn_signin.SetClick(() => { uiCtrlDispatcher.Dispatch(UICtrlMsg.SignInUI_Open); });
ui.btn_statement.SetClick(() => { uiCtrlDispatcher.Dispatch(UICtrlMsg.StatementViewUI_Open); });
ui.btn_saveingpot.SetClick(() => { uiCtrlDispatcher.Dispatch(UICtrlMsg.SaveingPotUI_Open); });
}
/// <summary>
/// 切换模式 默认黑夜模式
/// </summary>
@@ -442,8 +461,31 @@ namespace ChillConnect
}
ui.mode.selectedIndex = idx;
// 同步更新网格圆点颜色
bool isDayMode = idx == 1;
UpdateGridDotColor(isDayMode);
}
/// <summary>
/// 批量设置网格圆点颜色(随昼夜模式切换)
/// </summary>
/// <param name="isDay">true=白天模式,false=黑夜模式</param>
private void UpdateGridDotColor(bool isDay)
{
if (_gridDotList == null || _gridDotList.Count == 0)
return;
// 色值映射:白天#2c3a62,黑夜#d4e3f2
string colorHex = isDay ? "#2c3a62" : "#d4e3f2";
ColorUtility.TryParseHtmlString(colorHex, out Color targetColor);
foreach (var dot in _gridDotList)
{
if (dot == null) continue;
dot.point.color = targetColor;
}
}
#endregion
@@ -642,10 +684,13 @@ namespace ChillConnect
var pos = RowColToPos(r, c);
dot.SetPosition(pos.x, pos.y, 0);
_viewContainer.AddChild(dot);
// 加入列表统一管理
_gridDotList.Add(dot);
}
}
// ========= 新增:网格绘制完成后,设置居中缩放轴心 =========
// ========= 网格绘制完成后,设置居中缩放轴心 =========
CalculateGridCenter(cfg);
SetViewPivotToGridCenter();
}
@@ -1469,6 +1514,19 @@ namespace ChillConnect
private void ClearAllDynamicObj()
{
if (_levelConfig == null || _viewContainer == null) return;
// 销毁网格圆点
foreach (var dot in _gridDotList)
{
if (dot != null)
{
_viewContainer.RemoveChild(dot);
dot.Dispose();
}
}
_gridDotList.Clear();
foreach (var arrow in _levelConfig.arrows)
{
if (arrow.arrowObj != null)