1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import UIHelp from "../../../logic/ui/UIHelp"
- import { AudioConst, PlatformType } from "../../const/TypeConst"
- import GameDataCenter from "../../GameDataCenter"
- import IDataModel from "../../../frameWork/model/IDataModel"
- const SETTING = "SETTING"
- export class SettingModel extends IDataModel {
- setting: {
- musicOn: boolean,
- effectOn: boolean,
- musicVol: number, //0~1
- effectVol: number //0~1
- }
- constructor() {
- super('setting')
- let data = this.Query(SETTING, JSON.stringify({ musicOn: true, effectOn: true, talkOn: true, spineOn: true }))
- this.setting = JSON.parse(data)
- cc.audioEngine.setMusicVolume(this.setting.musicVol)
- if (cc.sys.platform != cc.sys.TAOBAO_MINIGAME) {
- // 非淘宝小游戏,淘宝小游戏不支持设置音量
- cc.audioEngine.setEffectsVolume(this.setting.effectVol)
- }
- }
- private saveSetting() {
- this.Set(SETTING, JSON.stringify(this.setting))
- this.Save()
- }
- get musicOn(): boolean {
- return this.setting.musicOn
- }
- set musicOn(on: boolean) {
- this.setting.musicOn = on
- this.saveSetting()
- if (this.musicOn) {
- GameDataCenter.audio.bgmName = ""
- // if (UIHelp.IsShowingUI(UIBattleFieldView)) {
- // GameDataCenter.audio.playMusic(AudioConst.bgm_fight)
- // } else {
- GameDataCenter.audio.playMusic(AudioConst.bgm_base)
- // }
- } else {
- GameDataCenter.audio.stopMusic()
- }
- }
- get effectOn(): boolean {
- return this.setting.effectOn
- }
- set effectOn(on: boolean) {
- this.setting.effectOn = on
- this.saveSetting()
- if (!this.effectOn) {
- GameDataCenter.audio.stopAllEffects()
- }
- }
- get musicVol(): number {
- return this.setting.musicVol
- }
- set musicVol(vol: number) {
- this.setting.musicVol = vol
- cc.audioEngine.setMusicVolume(this.setting.musicVol)
- this.saveSetting()
- }
- get effectVol(): number {
- return this.setting.effectVol
- }
- set effectVol(vol: number) {
- this.setting.effectVol = vol
- if (cc.sys.platform != cc.sys.TAOBAO_MINIGAME) {
- // 非淘宝小游戏,淘宝小游戏不支持设置音量
- cc.audioEngine.setEffectsVolume(this.setting.effectVol)
- }
- this.saveSetting()
- }
- // 切换音乐
- turnMusic() {
- this.musicOn = !this.setting.musicOn
- }
- // 切换音效
- turnEffect() {
- this.effectOn = !this.setting.effectOn
- }
- sendCdkey(id: string) {
- // let param: CS_User = { cdKey: { id: id } }
- // this.send({ user: param })
- }
- }
|