-- 房间设置界面 local ZPDef = ZPFramework.ZPImport("zp_base.luaScript.ZPDef") local ZPFuc = ZPFramework.ZPImport("zp_base.luaScript.ZPFunctions") local ZPSound = ZPFramework.ZPImport("zp_base.luaScript.ZPSound") local doushisiRoomSettingView = class("doushisiRoomSettingView", cc.UIView) function doushisiRoomSettingView:ctor() doushisiRoomSettingView.super.ctor(self); end local CheckBox_Nor_Color = cc.c4b(21,99,97,255) local CheckBox_Sel_Color = cc.c4b(213,46,11,255) function doushisiRoomSettingView:loadUI() local ui = loadUI("zp_doushisi/res/ui/ui_fangjian/doushisi_ui_shezhi.ui"); self.ui = ui; self:addChild(ui); end function doushisiRoomSettingView:onEnter() doushisiRoomSettingView.super.onEnter(self) self:loadUI() -- 关闭 self.ui.Items.Button_guanbi:registerClick(handler(self , self.onClickClose)) --音乐 self.ui.Items.CheckBox_Music:addEventListener(handler(self , self.onClickYinYue)) self.ui.Items.CheckBox_Music:setSelectedState(app.systemSetting.info.music); -- 音效 self.ui.Items.CheckBox_Effect:addEventListener(handler(self , self.onClickYinXiao)) self.ui.Items.CheckBox_Effect:setSelectedState(app.systemSetting.info.sound); --音乐音量 self.ui.Items.SliderMusic:setPercent(app.systemSetting.info.musicVolume * 100 or 100) self.ui.Items.SliderMusic:addEventListener(handler(self, self.onMusicVolumeClickSlider)) --音效音量 self.ui.Items.SliderEffect:setPercent(app.systemSetting.info.soundVolume * 100 or 100) self.ui.Items.SliderEffect:addEventListener(handler(self, self.onSoundVolumeClickSlider)) self:initLanguageRadioManager() self:initDesktopRadioManager() self:initMusicRadioManager() self:initHuDongYuYinManager() end function doushisiRoomSettingView:initLanguageRadioManager() self.ui.Items.CheckBox_PuTongHua:setVisible(false) self.languageRadioManager = import("luaScript.Tools.RadioManager"):new(); self.languageRadioManager:addItem(self.ui.Items.CheckBox_ChenZhou, ZPDef.GameLanguageType.FANG_YAN); self.languageRadioManager:addItem(self.ui.Items.CheckBox_PuTongHua, ZPDef.GameLanguageType.PU_TONG_HUA); local cacheLan = "LanguageType"..(ZPDef.GameID or app.gameId) local languageType = tonumber(loadUserInfo(cacheLan)) or ZPDef.GameLanguageType.FANG_YAN self.languageRadioManager:setDefault(languageType) local function callback(idx) saveUserInfo(cacheLan,idx) end self.languageRadioManager:setCallback(callback) end function doushisiRoomSettingView:initDesktopRadioManager() local cacheGameBgPic = "gameBgPicture"..(ZPDef.GameID or app.gameId) self.desktopRadioManager = import("luaScript.Tools.RadioManager"):new() if self.desktopRadioManager then self.desktopRadioManager:addItem(self.ui.Items.CheckBox_zm_bg_1, 1) self.desktopRadioManager:addItem(self.ui.Items.CheckBox_zm_bg_2, 2) self.desktopRadioManager:addItem(self.ui.Items.CheckBox_zm_bg_3, 3) self.desktopRadioManager:addItem(self.ui.Items.CheckBox_zm_bg_4, 4) local defaultValue = tonumber(loadUserInfo(cacheGameBgPic)) or 2 self.desktopRadioManager:setDefault(defaultValue) self.desktopRadioManager:setCallback(function ( value ) --更换牌背 app:dispatchEvent({name = "onChangeTable", idx = value}); end) end end function doushisiRoomSettingView:initMusicRadioManager() local cacheMusic = "gameBgMusic"..(ZPDef.GameID or app.gameId) self.musicRadioManager = import("luaScript.Tools.RadioManager"):new() if self.musicRadioManager then self.musicRadioManager:addItem(self.ui.Items.CheckBox_Music_1, 2) self.musicRadioManager:addItem(self.ui.Items.CheckBox_Music_2, 3) self.musicRadioManager:addItem(self.ui.Items.CheckBox_Music_3, 1) local defaultValue = tonumber(loadUserInfo(cacheMusic)) or 1 self.musicRadioManager:setDefault(defaultValue) self.musicRadioManager:setCallback(function ( value ) saveUserInfo(cacheMusic,value) --更换背景音乐 ZPSound.PlayGameBGM(value) end) end end function doushisiRoomSettingView:initHuDongYuYinManager() --互动表情 local faceKG = tonumber(loadUserInfo("propEnable")) or 1--0关 1开 self.ui.Items.Button_face_guan:setVisible(faceKG==0) self.ui.Items.Button_face_kai:setVisible(faceKG==1) self.ui.Items.Button_face_guan:registerClick(handler(self , self.setHuDongBiaoQingClose)) self.ui.Items.Button_face_kai:registerClick(handler(self , self.setHuDongBiaoQingOpen)) --屏蔽语音 local voiceKG = tonumber(loadUserInfo("voiceEnable")) or 1--0关 1开 self.ui.Items.Button_voice_guan:setVisible(voiceKG==0) self.ui.Items.Button_voice_kai:setVisible(voiceKG==1) self.ui.Items.Button_voice_guan:registerClick(handler(self , self.setPingBiYuYinClose)) self.ui.Items.Button_voice_kai:registerClick(handler(self , self.setPingBiYuYinOpen)) self.ui.Items.Layout_Prop:setVisible(not ZPFuc.isPropFobided()) self.ui.Items.Layout_Voice:setVisible(not ZPFuc.isPropFobided()) end -- 关闭 function doushisiRoomSettingView:onClickClose() playBtnEffect() self:removeFromParent() end -- 音乐 function doushisiRoomSettingView:onClickYinYue() app.systemSetting.info.music = self.ui.Items.CheckBox_Music:getSelectedState(); app.systemSetting:save() end -- 音效 function doushisiRoomSettingView:onClickYinXiao() app.systemSetting.info.sound = self.ui.Items.CheckBox_Effect:getSelectedState(); app.systemSetting:save() app:dispatchEvent({name = "onChangeYinXiao"}); end -- 音乐音量设置回调 function doushisiRoomSettingView:onMusicVolumeClickSlider() local percent = self.ui.Items.SliderMusic:getPercent(); local curValue = percent / 100; app.systemSetting.info.musicVolume = curValue; app.systemSetting:save() end -- 音效音量设置回调 function doushisiRoomSettingView:onSoundVolumeClickSlider() local percent = self.ui.Items.SliderEffect:getPercent(); local curValue = percent / 100; app.systemSetting.info.soundVolume = curValue; app.systemSetting:save() end --互动表情开 function doushisiRoomSettingView:setHuDongBiaoQingOpen() self.ui.Items.Button_face_guan:setVisible(true) self.ui.Items.Button_face_kai:setVisible(false) saveUserInfo("propEnable",0) --app.room:dispatchEvent({name = "ontSetPropEnabled", value = 0}); --saveUserInfo("propEnable",0) app:dispatchEvent({name = ZPDef.ZPEvent.ChangeChatEnable}) end --互动表情关 function doushisiRoomSettingView:setHuDongBiaoQingClose() self.ui.Items.Button_face_guan:setVisible(false) self.ui.Items.Button_face_kai:setVisible(true) saveUserInfo("propEnable",1) --app.room:dispatchEvent({name = "ontSetPropEnabled", value = 1}); --saveUserInfo("propEnable",1) app:dispatchEvent({name = ZPDef.ZPEvent.ChangeChatEnable}) end --屏蔽语音开 function doushisiRoomSettingView:setPingBiYuYinOpen() self.ui.Items.Button_voice_guan:setVisible(true) self.ui.Items.Button_voice_kai:setVisible(false) saveUserInfo("voiceEnable",0) --app.room:dispatchEvent({name = "onSetVoiceEnabled", value = 0}); --saveUserInfo("voiceEnable",0) app:dispatchEvent({name = ZPDef.ZPEvent.ChangeChatEnable}) end --屏蔽语音关 function doushisiRoomSettingView:setPingBiYuYinClose() self.ui.Items.Button_voice_guan:setVisible(false) self.ui.Items.Button_voice_kai:setVisible(true) saveUserInfo("voiceEnable",1) --app.room:dispatchEvent({name = "onSetVoiceEnabled", value = 1}); --saveUserInfo("voiceEnable",1) app:dispatchEvent({name = ZPDef.ZPEvent.ChangeChatEnable}) end return doushisiRoomSettingView;