选择角色界面更换背景的按钮遮罩鼠标点击判定BUG修复

This commit is contained in:
Lenheart 2024-12-15 23:34:10 +08:00
parent ef9b5a7a11
commit aa04a575e5
1 changed files with 13 additions and 10 deletions

View File

@ -58,16 +58,19 @@ class _Select_Character_SettingBackground_Object_Window extends Yosin_CommonUi {
function OnMouseLbClick(MousePos_X, MousePos_Y) { function OnMouseLbClick(MousePos_X, MousePos_Y) {
base.OnMouseLbClick(MousePos_X, MousePos_Y); base.OnMouseLbClick(MousePos_X, MousePos_Y);
if (isInRect) { if (isInRect) {
//遍历父对象中的所有按钮 还原其他按钮 //必须是在框的范围内
foreach(Button in Parent.SettingBackgroundButtonList) { if (MousePos_Y > Parent.Y && MousePos_Y<(Parent.Y + Parent.Height)) {
Button.SelectMask.SetVisible(false); //遍历父对象中的所有按钮 还原其他按钮
Button.SelectFlag = false; foreach(Button in Parent.SettingBackgroundButtonList) {
} Button.SelectMask.SetVisible(false);
//设置自身选中状态 Button.SelectFlag = false;
SelectMask.SetVisible(true); }
SelectFlag = true; //设置自身选中状态
SelectMask.SetVisible(true);
SelectFlag = true;
Parent.Parent.ChangeBackground(Idx); Parent.Parent.ChangeBackground(Idx);
}
} }
} }
} }
@ -122,7 +125,7 @@ class _Select_Character_SettingBackground_Window extends Yosin_Window {
ScrollObject = Yosin_ScrollBar(Width - 13, 5, Height - 8, 20); ScrollObject = Yosin_ScrollBar(Width - 13, 5, Height - 8, 20);
ScrollObject.SetChangeCallBack(function(Value) { ScrollObject.SetChangeCallBack(function(Value) {
foreach(Pos, Button in SettingBackgroundButtonList) { foreach(Pos, Button in SettingBackgroundButtonList) {
Button.SetPosition(5 + (101 * (Pos % 2)), 9 + (61 * (Pos / 2)) - Value * (61 * 12)); Button.SyncPos(5 + (101 * (Pos % 2)), 9 + (61 * (Pos / 2)) - Value * (61 * 12));
} }
}.bindenv(this)); }.bindenv(this));
AddUIChild(ScrollObject); AddUIChild(ScrollObject);