2023-07-14 19:35:33 +00:00
|
|
|
|
XUiPanelOtherSet = XClass(nil, "XUiPanelOtherSet")
|
|
|
|
|
local XUiSafeAreaAdapter = CS.XUiSafeAreaAdapter
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:Ctor(ui, parent)
|
|
|
|
|
self.GameObject = ui.gameObject
|
|
|
|
|
self.Transform = ui.transform
|
|
|
|
|
self.Parent = parent
|
|
|
|
|
|
|
|
|
|
XTool.InitUiObject(self)
|
|
|
|
|
self:InitUi()
|
|
|
|
|
|
|
|
|
|
self.MaxOff = CS.XGame.ClientConfig:GetFloat("SpecialScreenOff")
|
|
|
|
|
self.SetConfigs = XSetConfigs
|
2024-09-01 20:49:41 +00:00
|
|
|
|
self._IsInitFocusTypeDlcHunt = false
|
2023-07-14 19:35:33 +00:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:InitUi()
|
|
|
|
|
if CS.XFight.Instance or XUiManager.IsHideFunc then
|
|
|
|
|
self.LoadingSet.gameObject:SetActiveEx(false)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
local loadingTypes = {self.TogLoadingType1, self.TogLoadingType2}
|
|
|
|
|
self.TGroupLoadingType:Init(loadingTypes, handler(self, self.OnLoadingTypeChanged))
|
|
|
|
|
|
|
|
|
|
local damageNumSizeTypes = {self.TogGraphics_0, self.TogGraphics_1, self.TogGraphics_2, self.TogGraphics_3}
|
|
|
|
|
self.TGroupResolution:Init(damageNumSizeTypes, handler(self, self.OnDamageNumSizeTypeChanged))
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
--region focus
|
|
|
|
|
local focusTypes = {self.TogFocusType1, self.TogFocusType2, self.TogFocusType3}
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.TGroupFocusType:Init(focusTypes, handler(self, self.OnFocusTypeChanged))
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
for _, focusType in pairs(XSetConfigs.FocusType) do
|
|
|
|
|
local index = self:GetFocusIndex(focusType)
|
|
|
|
|
if self["TxtFocusType"..index] then
|
|
|
|
|
self["TxtFocusType"..index].text = CsXTextManagerGetText("FocusType" .. focusType)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
if self.TogFocusButton1 then
|
|
|
|
|
self.TogFocusButton1.gameObject:SetActiveEx(false)
|
|
|
|
|
end
|
|
|
|
|
--endregion focus
|
|
|
|
|
|
|
|
|
|
--region focus dlcHunt
|
|
|
|
|
if self.TGroupFocusTypeDlcHunt then --en1.32特有, 原因是OtherSetPc上没有这个节点, en2.0版本和UI说下增加这个节点
|
|
|
|
|
local focusTypesDlcHunt = {self.TogTypeDlcHunt1, self.TogTypeDlcHunt2, self.TogTypeDlcHunt3}
|
|
|
|
|
self.TGroupFocusTypeDlcHunt:Init(focusTypesDlcHunt, handler(self, self.OnFocusTypeDlcHuntChanged))
|
|
|
|
|
for _, focusType in pairs(XSetConfigs.FocusTypeDlcHunt) do
|
|
|
|
|
local index = self:GetFocusIndex(focusType)
|
|
|
|
|
self["TxtFocusTypeDlcHunt"..index].text = CsXTextManagerGetText("FocusTypeDlcHunt" .. focusType)
|
|
|
|
|
end
|
|
|
|
|
-- self.TogFocusDlcHuntButton1.gameObject:SetActiveEx(false)
|
|
|
|
|
self.TogFocusDlcHuntButton3.gameObject:SetActiveEx(false)
|
|
|
|
|
|
|
|
|
|
if not XDataCenter.DlcHuntManager.IsOpen() then
|
|
|
|
|
self.DlcHuntFocus.gameObject:SetActiveEx(false)
|
|
|
|
|
end
|
|
|
|
|
end
|
2023-07-14 19:35:33 +00:00
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
--endregion focus dlcHunt
|
|
|
|
|
|
2023-07-14 19:35:33 +00:00
|
|
|
|
local weaponTransTypes = {self.TogWeaponTransType1, self.TogWeaponTransType2}
|
|
|
|
|
self.TGroupWeaponTransType:Init(weaponTransTypes, handler(self, self.OnWeaponTransTypeChanged))
|
|
|
|
|
|
|
|
|
|
self.TxtWeaponTransType1.text = CsXTextManagerGetText("WeaponTransType1")
|
|
|
|
|
self.TxtWeaponTransType2.text = CsXTextManagerGetText("WeaponTransType2")
|
|
|
|
|
|
|
|
|
|
local rechargeTypes = {self.TogRechargeType1, self.TogRechargeType2}
|
|
|
|
|
self.TGroupRechargeType:Init(rechargeTypes, handler(self, self.OnRechargeTypeChanged))
|
|
|
|
|
|
|
|
|
|
self.TxtRechargeType1.text = CsXTextManagerGetText("RechargeType1")
|
|
|
|
|
self.TxtRechargeType2.text = CsXTextManagerGetText("RechargeType2")
|
2024-09-01 20:49:41 +00:00
|
|
|
|
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self:AddListener()
|
|
|
|
|
self:ShowAgreement()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:AddListener()
|
|
|
|
|
self.Slider.onValueChanged:AddListener(handler(self, self.OnSliderValueChanged))
|
|
|
|
|
self.TogFriEffects.onValueChanged:AddListener(handler(self, self.OnTogFriEffectsValueChanged))
|
|
|
|
|
self.TogFriNum.onValueChanged:AddListener(handler(self, self.OnTogFriNumValueChanged))
|
2024-09-01 20:49:41 +00:00
|
|
|
|
--region focus
|
|
|
|
|
if self.TogFocusButton2 then
|
|
|
|
|
self.TogFocusButton2.onValueChanged:AddListener(handler(self, self.OnTogFocusButtonChanged2))
|
|
|
|
|
end
|
|
|
|
|
if self.TogFocusButton3 then
|
|
|
|
|
self.TogFocusButton3.onValueChanged:AddListener(handler(self, self.OnTogFocusButtonChanged3))
|
|
|
|
|
end
|
|
|
|
|
--endregion focus
|
|
|
|
|
|
|
|
|
|
--region focus dlcHunt
|
|
|
|
|
if self.TogFocusDlcHuntButton1 and self.TogFocusDlcHuntButton2 and self.TogFocusDlcHuntButton3 then
|
|
|
|
|
self.TogFocusDlcHuntButton1.onValueChanged:AddListener(handler(self, self.OnTogFocusDlcHuntButtonChanged1))
|
|
|
|
|
self.TogFocusDlcHuntButton2.onValueChanged:AddListener(handler(self, self.OnTogFocusDlcHuntButtonChanged2))
|
|
|
|
|
self.TogFocusDlcHuntButton3.onValueChanged:AddListener(handler(self, self.OnTogFocusDlcHuntButtonChanged3))
|
|
|
|
|
end
|
|
|
|
|
--endregion focus dlcHunt
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.TogOnlineInvite.onValueChanged:AddListener(handler(self, self.OnTogOnlineButtonChanged))
|
|
|
|
|
self.BtnLoadingSet.CallBack = function()
|
|
|
|
|
XLuaUiManager.Open("UiLoadingSet")
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:ShowAgreement()
|
2024-09-01 20:49:41 +00:00
|
|
|
|
if self.BtnProtocolSetting then --海外先屏蔽库洛SDK隐私查看按钮
|
|
|
|
|
self.BtnProtocolSetting.gameObject:SetActiveEx(false)
|
|
|
|
|
end
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.BtnUserAgreement.CallBack = function()
|
|
|
|
|
XUiManager.OpenPopWebview(CS.XGame.ClientConfig:GetString("UserAgreementUrl"))
|
|
|
|
|
end
|
|
|
|
|
self.BtnPrivacyPolicy.CallBack = function()
|
|
|
|
|
XUiManager.OpenPopWebview(CS.XGame.ClientConfig:GetString("PrivacyPolicyUrl"))
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:GetCache()
|
|
|
|
|
self.CustomLoadState = XDataCenter.LoadingManager.GetCustomLoadingState()
|
|
|
|
|
self.DamageNumState = XSaveTool.GetData(self.SetConfigs.SelfNum) or self.SetConfigs.DamageNumSize.Middle
|
|
|
|
|
self.FriendNumState = XSaveTool.GetData(self.SetConfigs.FriendNum) or self.SetConfigs.FriendNumEnum.Close
|
|
|
|
|
self.FriendEffectEnumState = XSaveTool.GetData(self.SetConfigs.FriendEffect) or self.SetConfigs.FriendEffectEnum.Open
|
|
|
|
|
self.ScreenOffValue = XSaveTool.GetData(self.SetConfigs.ScreenOff) or 0
|
|
|
|
|
|
|
|
|
|
self.TGroupLoadingType:SelectIndex(self.CustomLoadState, true)
|
|
|
|
|
self.TGroupResolution:SelectIndex(self.DamageNumState)
|
|
|
|
|
self.TogFriEffects.isOn = self.FriendEffectEnumState == self.SetConfigs.FriendNumEnum.Open
|
|
|
|
|
self.TogFriNum.isOn = self.FriendNumState == self.SetConfigs.FriendNumEnum.Open
|
|
|
|
|
self.IsFirstSlider = true
|
|
|
|
|
self.Slider.value = tonumber(self.ScreenOffValue)
|
|
|
|
|
self.SaveCustomLoadState = self.CustomLoadState
|
|
|
|
|
self.SaveDamageNumState = self.DamageNumState
|
|
|
|
|
self.SaveFriendNumState = self.FriendNumState
|
|
|
|
|
self.SaveFriendEffectEnumState = self.FriendEffectEnumState
|
|
|
|
|
self.SaveScreenOffValue = self.ScreenOffValue
|
2024-09-01 20:49:41 +00:00
|
|
|
|
--region focus
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.FocusType = XDataCenter.SetManager.FocusType
|
2024-09-01 20:49:41 +00:00
|
|
|
|
self.FocusButton = XTool.Clone(XDataCenter.SetManager.FocusButton)
|
|
|
|
|
self.TGroupFocusType:SelectIndex(self:GetFocusIndex(self.FocusType))
|
|
|
|
|
self:UpdateUiFocusButton()
|
|
|
|
|
--endregion focus
|
|
|
|
|
--region focus dlcHunt
|
|
|
|
|
if self.TGroupFocusTypeDlcHunt then
|
|
|
|
|
self.FocusTypeDlcHunt = XDataCenter.SetManager.FocusTypeDlcHunt
|
|
|
|
|
self.FocusButtonDlcHunt = XTool.Clone(XDataCenter.SetManager.FocusButtonDlcHunt)
|
|
|
|
|
self._IsInitFocusTypeDlcHunt = true
|
|
|
|
|
self.FocusTypeDlcHunt = XMath.Clamp(self.FocusTypeDlcHunt, 1, 2)
|
|
|
|
|
self.TGroupFocusTypeDlcHunt:SelectIndex(self:GetFocusIndex(self.FocusTypeDlcHunt))
|
|
|
|
|
self._IsInitFocusTypeDlcHunt = false
|
|
|
|
|
self:UpdateUiFocusButtonDlcHunt()
|
|
|
|
|
end
|
|
|
|
|
--endregion focus dlcHunt
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.InviteButton = XDataCenter.SetManager.InviteButton
|
|
|
|
|
self.TogOnlineInvite.isOn = self.InviteButton == 1
|
|
|
|
|
self.WeaponTransType = XDataCenter.SetManager.WeaponTransType
|
2024-09-01 20:49:41 +00:00
|
|
|
|
if self.WeaponTransType <= self.TGroupWeaponTransType.TabBtnList.Count then
|
|
|
|
|
self.TGroupWeaponTransType:SelectIndex(self.WeaponTransType)
|
|
|
|
|
else
|
|
|
|
|
self.TGroupWeaponTransType:SelectIndex(1)
|
|
|
|
|
end
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.RechargeType = XDataCenter.SetManager.RechargeType
|
|
|
|
|
self.TGroupRechargeType:SelectIndex(self.RechargeType)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:ResetToDefault()
|
|
|
|
|
self.CustomLoadState = XSetConfigs.LoadingType.Default
|
|
|
|
|
self.DamageNumState = self.SetConfigs.DamageNumSize.Middle
|
|
|
|
|
self.FriendNumState = self.SetConfigs.FriendNumEnum.Close
|
|
|
|
|
self.FriendEffectEnumState = self.SetConfigs.FriendEffectEnum.Open
|
|
|
|
|
self.TogFriEffects.isOn = self.FriendEffectEnumState == self.SetConfigs.FriendNumEnum.Open
|
|
|
|
|
self.TogFriNum.isOn = self.FriendNumState == self.SetConfigs.FriendNumEnum.Open
|
|
|
|
|
|
|
|
|
|
self.TGroupLoadingType:SelectIndex(self.CustomLoadState, true)
|
|
|
|
|
self.TGroupResolution:SelectIndex(self.DamageNumState)
|
|
|
|
|
self.ScreenOffValue = 0
|
|
|
|
|
self.Slider.value = 0
|
2024-09-01 20:49:41 +00:00
|
|
|
|
--region focus
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.FocusType = self.SetConfigs.DefaultFocusType
|
2024-09-01 20:49:41 +00:00
|
|
|
|
self.TGroupFocusType:SelectIndex(self:GetFocusIndex(self.FocusType))
|
|
|
|
|
self.FocusButton = {
|
|
|
|
|
[XSetConfigs.FocusType.Manual] = self.SetConfigs.DefaultFocusButton,
|
|
|
|
|
[XSetConfigs.FocusType.Auto] = self.SetConfigs.DefaultFocusButton,
|
|
|
|
|
[XSetConfigs.FocusType.SemiAuto] = self.SetConfigs.DefaultFocusButton,
|
|
|
|
|
}
|
|
|
|
|
self:UpdateUiFocusButton()
|
|
|
|
|
--endregion focus
|
|
|
|
|
--region focus dlcHunt
|
|
|
|
|
self.FocusTypeDlcHunt = self.SetConfigs.DefaultFocusTypeDlcHunt
|
|
|
|
|
if self.TGroupFocusTypeDlcHunt then
|
|
|
|
|
self.TGroupFocusTypeDlcHunt:SelectIndex(self:GetFocusIndexDlcHunt(self.FocusTypeDlcHunt))
|
|
|
|
|
self.FocusButtonDlcHunt = {
|
|
|
|
|
[XSetConfigs.FocusTypeDlcHunt.Manual] = self.SetConfigs.DefaultFocusButtonDlcHunt,
|
|
|
|
|
[XSetConfigs.FocusTypeDlcHunt.Auto] = self.SetConfigs.DefaultFocusButtonDlcHunt,
|
|
|
|
|
--[XSetConfigs.FocusTypeDlcHunt.SemiAuto] = self.SetConfigs.DefaultFocusButtonDlcHunt,
|
|
|
|
|
}
|
|
|
|
|
self:UpdateUiFocusButtonDlcHunt()
|
|
|
|
|
end
|
|
|
|
|
--endregion focus dlcHunt
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.InviteButton = self.SetConfigs.DefaultInviteButton
|
|
|
|
|
self.TogOnlineInvite.isOn = self.InviteButton == 1
|
|
|
|
|
self.WeaponTransType = self.SetConfigs.DefaultWeaponTransType
|
|
|
|
|
self.TGroupWeaponTransType:SelectIndex(self.WeaponTransType)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:SaveChange()
|
|
|
|
|
self.SaveCustomLoadState = self.CustomLoadState
|
|
|
|
|
self.SaveDamageNumState = self.DamageNumState
|
|
|
|
|
self.SaveFriendNumState = self.FriendNumState
|
|
|
|
|
self.SaveFriendEffectEnumState = self.FriendEffectEnumState
|
|
|
|
|
self.SaveScreenOffValue = self.ScreenOffValue
|
|
|
|
|
|
|
|
|
|
XDataCenter.LoadingManager.SetCustomLoadingState(self.CustomLoadState)
|
|
|
|
|
XDataCenter.SetManager.SaveSelfNum(self.DamageNumState)
|
|
|
|
|
XDataCenter.SetManager.SaveFriendNum(self.FriendNumState)
|
|
|
|
|
XDataCenter.SetManager.SaveFriendEffect(self.FriendEffectEnumState)
|
|
|
|
|
XDataCenter.SetManager.SaveScreenOff(self.ScreenOffValue)
|
|
|
|
|
|
|
|
|
|
XDataCenter.SetManager.SetOwnFontSizeByTab(self.DamageNumState)
|
|
|
|
|
XDataCenter.SetManager.SetAllyDamage(self.FriendNumState == self.SetConfigs.FriendNumEnum.Open)
|
|
|
|
|
XDataCenter.SetManager.SetAllyEffect(self.FriendEffectEnumState == self.SetConfigs.FriendEffectEnum.Open)
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
--region focus
|
2023-07-14 19:35:33 +00:00
|
|
|
|
XDataCenter.SetManager.SetFocusType(self.FocusType)
|
2024-09-01 20:49:41 +00:00
|
|
|
|
XDataCenter.SetManager.SetFocusButtonActive(XSetConfigs.FocusType.Manual, self.FocusButton[XSetConfigs.FocusType.Manual] == 1)
|
|
|
|
|
XDataCenter.SetManager.SetFocusButtonActive(XSetConfigs.FocusType.SemiAuto, self.FocusButton[XSetConfigs.FocusType.SemiAuto] == 1)
|
|
|
|
|
--endregion focus
|
|
|
|
|
--region focus dlcHunt
|
|
|
|
|
if self.FocusTypeDlcHunt then
|
|
|
|
|
XDataCenter.SetManager.SetFocusTypeDlcHunt(self.FocusTypeDlcHunt)
|
|
|
|
|
XDataCenter.SetManager.SetFocusButtonActiveDlcHunt(XSetConfigs.FocusTypeDlcHunt.Manual, self.FocusButtonDlcHunt[XSetConfigs.FocusTypeDlcHunt.Manual] == 1)
|
|
|
|
|
XDataCenter.SetManager.SetFocusButtonActiveDlcHunt(XSetConfigs.FocusTypeDlcHunt.Auto, self.FocusButtonDlcHunt[XSetConfigs.FocusTypeDlcHunt.Auto] == 1)
|
|
|
|
|
end
|
|
|
|
|
--endregion focus dlcHunt
|
2023-07-14 19:35:33 +00:00
|
|
|
|
XDataCenter.SetManager.SetInviteButtonActive(self.InviteButton == 1)
|
|
|
|
|
XDataCenter.SetManager.SetWeaponTransType(self.WeaponTransType)
|
|
|
|
|
XDataCenter.SetManager.SetRechargeType(self.RechargeType)
|
2024-09-01 20:49:41 +00:00
|
|
|
|
|
|
|
|
|
local dict = {}
|
|
|
|
|
dict["screen_off_value"] = math.floor(self.ScreenOffValue * 100)
|
|
|
|
|
dict["custom_load_state"] = self.CustomLoadState
|
|
|
|
|
dict["damage_num_state"] = self.DamageNumState
|
|
|
|
|
dict["friend_damage_state"] = self.FriendNumState == 2
|
|
|
|
|
dict["friend_effect_state"] = self.FriendEffectEnumState == 2
|
|
|
|
|
dict["focus_type"] = self.FocusType
|
|
|
|
|
XDataCenter.SetManager.SystemSettingBuriedPoint(dict)
|
2023-07-14 19:35:33 +00:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:CheckDataIsChange()
|
|
|
|
|
return
|
|
|
|
|
self.SaveCustomLoadState ~= self.CustomLoadState or
|
|
|
|
|
self.SaveDamageNumState ~= self.DamageNumState or
|
|
|
|
|
self.SaveFriendNumState ~= self.FriendNumState or
|
|
|
|
|
self.SaveFriendEffectEnumState ~= self.FriendEffectEnumState or
|
|
|
|
|
self.SaveScreenOffValue ~= self.ScreenOffValue or
|
2024-09-01 20:49:41 +00:00
|
|
|
|
--region focus
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.FocusType ~= XDataCenter.SetManager.FocusType or
|
2024-09-01 20:49:41 +00:00
|
|
|
|
self:IsFocusButtonChanged() or
|
|
|
|
|
--endregion focus
|
|
|
|
|
--region focus dlcHunt
|
|
|
|
|
-- self.FocusTypeDlcHunt ~= XDataCenter.SetManager.FocusTypeDlcHunt or --en1.32临时屏蔽 en2.0版本需要UI修改
|
|
|
|
|
-- self:IsFocusButtonChangedDlcHunt() or
|
|
|
|
|
--endregion focus dlcHunt
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.InviteButton ~=XDataCenter.SetManager.InviteButton or
|
|
|
|
|
self.WeaponTransType ~= XDataCenter.SetManager.WeaponTransType
|
|
|
|
|
end
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
function XUiPanelOtherSet:IsFocusButtonChanged()
|
|
|
|
|
return self.FocusButton[XSetConfigs.FocusType.Manual] ~=XDataCenter.SetManager.FocusButton[XSetConfigs.FocusType.Manual] or
|
|
|
|
|
self.FocusButton[XSetConfigs.FocusType.SemiAuto] ~=XDataCenter.SetManager.FocusButton[XSetConfigs.FocusType.SemiAuto]
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:IsFocusButtonChangedDlcHunt()
|
|
|
|
|
return self.FocusButtonDlcHunt[XSetConfigs.FocusTypeDlcHunt.Manual] ~=XDataCenter.SetManager.FocusButtonDlcHunt[XSetConfigs.FocusTypeDlcHunt.Manual] or
|
|
|
|
|
self.FocusButtonDlcHunt[XSetConfigs.FocusTypeDlcHunt.Auto] ~=XDataCenter.SetManager.FocusButtonDlcHunt[XSetConfigs.FocusTypeDlcHunt.Auto]
|
|
|
|
|
end
|
|
|
|
|
|
2023-07-14 19:35:33 +00:00
|
|
|
|
function XUiPanelOtherSet:CancelChange()
|
|
|
|
|
self.ScreenOffValue = self.SaveScreenOffValue
|
|
|
|
|
self:SetSliderValueChanged(self.SaveScreenOffValue)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnSliderValueChanged(value)
|
|
|
|
|
if value < 0 then return end
|
|
|
|
|
if self.IsFirstSlider then
|
|
|
|
|
self.IsFirstSlider = false
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
self.ScreenOffValue = value
|
|
|
|
|
self:SetSliderValueChanged(value)
|
|
|
|
|
XDataCenter.SetManager.SetAdaptorScreenChange()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:SetSliderValueChanged(value)
|
|
|
|
|
XUiSafeAreaAdapter.SetSpecialScreenOff(tonumber(value) * self.MaxOff)
|
|
|
|
|
if self.Parent then
|
|
|
|
|
self.Parent:UpdateSpecialScreenOff()
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnTogFriEffectsValueChanged(value)
|
|
|
|
|
local enum = self.SetConfigs.FriendEffectEnum
|
|
|
|
|
self.FriendEffectEnumState = value and enum.Open or enum.Close
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnTogFriNumValueChanged(value)
|
|
|
|
|
local enum = self.SetConfigs.FriendNumEnum
|
|
|
|
|
self.FriendNumState = value and enum.Open or enum.Close
|
|
|
|
|
end
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
function XUiPanelOtherSet:OnTogFocusButtonChanged2(value)
|
|
|
|
|
self.FocusButton[self:GetFocusType(2)] = value and 1 or 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnTogFocusButtonChanged3(value)
|
|
|
|
|
self.FocusButton[self:GetFocusType(3)] = value and 1 or 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnTogFocusDlcHuntButtonChanged1(value)
|
|
|
|
|
self.FocusButtonDlcHunt[self:GetFocusTypeDlcHunt(1)] = value and 1 or 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnTogFocusDlcHuntButtonChanged2(value)
|
|
|
|
|
self.FocusButtonDlcHunt[self:GetFocusTypeDlcHunt(2)] = value and 1 or 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnTogFocusDlcHuntButtonChanged3(value)
|
|
|
|
|
self.FocusButtonDlcHunt[self:GetFocusTypeDlcHunt(3)] = value and 1 or 0
|
2023-07-14 19:35:33 +00:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnTogOnlineButtonChanged(value)
|
|
|
|
|
self.InviteButton = value and 1 or 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnLoadingTypeChanged(index)
|
|
|
|
|
if index == self.SetConfigs.LoadingType.Custom
|
2024-09-01 20:49:41 +00:00
|
|
|
|
and not XFunctionManager.DetectionFunction(XFunctionManager.FunctionName.Archive, nil, true) then
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.TGroupLoadingType:SelectIndex(self.SetConfigs.LoadingType.Default)
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
self.CustomLoadState = index
|
|
|
|
|
self.DescriptionLoadingType1.gameObject:SetActiveEx(index == 1)
|
|
|
|
|
self.DescriptionLoadingType2.gameObject:SetActiveEx(index == 2)
|
|
|
|
|
self.BtnLoadingSet.gameObject:SetActiveEx(index == 2)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnDamageNumSizeTypeChanged(index)
|
|
|
|
|
self.CurSelfNumKey = self.SetConfigs.SelfNumKeyIndexConfig[index]
|
|
|
|
|
self.DamageNumState = index
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnFocusTypeChanged(index)
|
|
|
|
|
if index == 0 then return end
|
2024-09-01 20:49:41 +00:00
|
|
|
|
self.FocusType = self:GetFocusType(index)
|
2023-07-14 19:35:33 +00:00
|
|
|
|
self.DescriptionFocusType1.gameObject:SetActiveEx(index == 1)
|
|
|
|
|
self.DescriptionFocusType2.gameObject:SetActiveEx(index == 2)
|
2024-09-01 20:49:41 +00:00
|
|
|
|
if self.DescriptionFocusType3 then
|
|
|
|
|
self.DescriptionFocusType3.gameObject:SetActiveEx(index == 3)
|
|
|
|
|
end
|
|
|
|
|
if self.TogFocusButton2 then
|
|
|
|
|
self.TogFocusButton2.gameObject:SetActiveEx(index == 2)
|
|
|
|
|
end
|
|
|
|
|
if self.TogFocusButton3 then
|
|
|
|
|
self.TogFocusButton3.gameObject:SetActiveEx(index == 3)
|
|
|
|
|
end
|
|
|
|
|
self:UpdateUiFocusButton()
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnFocusTypeDlcHuntChanged(index)
|
|
|
|
|
if XDataCenter.DlcRoomManager.IsInTutorialWorld() then
|
|
|
|
|
local teachingIndex = self:GetFocusIndexDlcHunt(XSetConfigs.FocusTypeDlcHunt.Auto)
|
|
|
|
|
if teachingIndex ~= index then
|
|
|
|
|
self.TGroupFocusTypeDlcHunt:SelectIndex(teachingIndex)
|
|
|
|
|
if not self._IsInitFocusTypeDlcHunt then
|
|
|
|
|
XUiManager.TipText("FocusTypeDlcHuntTeaching")
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
return
|
|
|
|
|
end
|
|
|
|
|
if index == 0 then return end
|
|
|
|
|
self.FocusTypeDlcHunt = self:GetFocusTypeDlcHunt(index)
|
|
|
|
|
self.DescriptionFocusDlcHuntType1.gameObject:SetActiveEx(index == 1)
|
|
|
|
|
self.DescriptionFocusDlcHuntType2.gameObject:SetActiveEx(index == 2)
|
|
|
|
|
self.DescriptionFocusDlcHuntType3.gameObject:SetActiveEx(index == 3)
|
|
|
|
|
self.TogFocusDlcHuntButton1.gameObject:SetActiveEx(false)--index == 1)
|
|
|
|
|
self.TogFocusDlcHuntButton2.gameObject:SetActiveEx(index == 2)
|
|
|
|
|
--self.TogFocusDlcHuntButton3.gameObject:SetActiveEx(index == 3)
|
|
|
|
|
self:UpdateUiFocusButtonDlcHunt()
|
2023-07-14 19:35:33 +00:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnWeaponTransTypeChanged(index)
|
|
|
|
|
if index == 0 then return end
|
|
|
|
|
self.WeaponTransType = index
|
|
|
|
|
self.DescriptionWeaponTransType1.gameObject:SetActiveEx(index == 1)
|
|
|
|
|
self.DescriptionWeaponTransType2.gameObject:SetActiveEx(index == 2)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:OnRechargeTypeChanged(index)
|
|
|
|
|
if index == 0 then return end
|
|
|
|
|
self.RechargeType = index
|
|
|
|
|
self.DescriptionRechargeType1.gameObject:SetActiveEx(index == 1)
|
|
|
|
|
self.DescriptionRechargeType2.gameObject:SetActiveEx(index == 2)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:ShowPanel()
|
|
|
|
|
self.GameObject:SetActive(true)
|
|
|
|
|
if self.Parent then
|
|
|
|
|
self.Adaptation.gameObject:SetActiveEx(not self.Parent.IsFight)
|
|
|
|
|
end
|
|
|
|
|
self:GetCache()
|
|
|
|
|
self.IsShow = true
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:HidePanel()
|
|
|
|
|
self.IsShow = false
|
|
|
|
|
self.GameObject:SetActive(false)
|
|
|
|
|
end
|
|
|
|
|
|
2024-09-01 20:49:41 +00:00
|
|
|
|
-- 由于ui位置上, 新增的半自动锁定插到了中间, 所以type2和type3的index是反的
|
|
|
|
|
function XUiPanelOtherSet:GetFocusType(focusIndex)
|
|
|
|
|
if focusIndex == 2 then
|
|
|
|
|
return 3
|
|
|
|
|
end
|
|
|
|
|
if focusIndex == 3 then
|
|
|
|
|
return 2
|
|
|
|
|
end
|
|
|
|
|
return focusIndex
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:GetFocusIndex(focusType)
|
|
|
|
|
if focusType == 2 then
|
|
|
|
|
return 3
|
|
|
|
|
end
|
|
|
|
|
if focusType == 3 then
|
|
|
|
|
return 2
|
|
|
|
|
end
|
|
|
|
|
return focusType
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:UpdateUiFocusButton()
|
|
|
|
|
for _, focusType in pairs(XSetConfigs.FocusType) do
|
|
|
|
|
local index = self:GetFocusIndex(focusType)
|
|
|
|
|
if self["TogFocusButton"..index] then
|
|
|
|
|
self["TogFocusButton"..index].isOn = self.FocusButton[focusType] == 1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- 2不存在,dlc没有进阶锁定
|
|
|
|
|
function XUiPanelOtherSet:GetFocusTypeDlcHunt(focusIndex)
|
|
|
|
|
if focusIndex == 2 then
|
|
|
|
|
return 3
|
|
|
|
|
end
|
|
|
|
|
if focusIndex == 3 then
|
|
|
|
|
return 2
|
|
|
|
|
end
|
|
|
|
|
return focusIndex
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:GetFocusIndexDlcHunt(focusType)
|
|
|
|
|
if focusType == 2 then
|
|
|
|
|
return 3
|
|
|
|
|
end
|
|
|
|
|
if focusType == 3 then
|
|
|
|
|
return 2
|
|
|
|
|
end
|
|
|
|
|
return focusType
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function XUiPanelOtherSet:UpdateUiFocusButtonDlcHunt()
|
|
|
|
|
for _, focusType in pairs(XSetConfigs.FocusTypeDlcHunt) do
|
|
|
|
|
local index = self:GetFocusIndexDlcHunt(focusType)
|
|
|
|
|
if self["TogFocusDlcHuntButton"..index] then
|
|
|
|
|
self["TogFocusDlcHuntButton"..index].isOn = self.FocusButtonDlcHunt[focusType] == 1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
2023-07-14 19:35:33 +00:00
|
|
|
|
return XUiPanelOtherSet
|