|
- local yibinmajiangSound = MJFramework.MJFrameworkClassImprot("mj.luaScript.MJSound")
- local MJDefine = MJFramework.MJImport("mj.luaScript.MJDefine")
-
- local path = "mj/res/sound"
- local yibinmajiangPath = "mj/res/sound"
-
- yibinmajiangSound.man = "c_man"
- yibinmajiangSound.women = "c_women"
- yibinmajiangSound.pre = "c_"
- yibinmajiangSound.soundType = 1
-
- -- 吃操作
- --[[yibinmajiangSound.OperateSoundConfig[MJDefine.MJOperateType.OPREATE_CHI] = "chi"
- yibinmajiangSound.OperateSoundConfig[MJDefine.MJOperateType.OPREATE_MANGANG] = "gang"--]]
-
- local function dealSex(s)
- local sex=tonumber(s)
- if sex~=1 and sex~=2 then
- sex=1
- end
- return sex
- end
-
- -- sound_t 1 普通话 2 方言
- function yibinmajiangSound.setSoundType( sound_t )
- -- 强制使用方言
- local sound_t = 2
-
- if sound_t == 1 then
- yibinmajiangSound.man = "c_man"
- yibinmajiangSound.women = "c_women"
- yibinmajiangSound.pre = "c_"
- yibinmajiangSound.soundType = 1
- yibinmajiangPath = "mj_yibinmajiang/res/sound"
- else
- yibinmajiangSound.man = "f_man"
- yibinmajiangSound.women = "f_women"
- yibinmajiangSound.pre = "f_"
- yibinmajiangPath = "mj_yibinmajiang/res/sound"
- yibinmajiangSound.soundType = 2
- end
- end
-
- yibinmajiangSound.OperateSoundConfig={
- -- [MJDefine.MJOperateType.OPREATE_CHI] = "", --吃操作
- [MJDefine.MJOperateType.OPREATE_PENG] = "peng", --碰操作
- [MJDefine.MJOperateType.OPREATE_ZHIGANG] = "gang", --直杠操作
- [MJDefine.MJOperateType.OPREATE_BAGANG] = "gang", --巴杠
- [MJDefine.MJOperateType.OPREATE_ANGANG] = "gang", --暗杠
- [MJDefine.MJOperateType.OPREATE_DIANPAOHU] = "hu", --点炮胡牌
- [MJDefine.MJOperateType.OPREATE_ZIMOHU] = "zimo", --自胡牌
- [MJDefine.MJOperateType.OPREATE_QIANG_GANG_HU] = "qiangganghu", --抢杠胡
- [MJDefine.MJOperateType.OPREATE_FEI] = "fei", --飞
- [MJDefine.MJOperateType.OPREATE_TI] = "ti", --提
- }
-
- -- 1是男,2是女
- local OperateSoundCount = {
- [1] = {
- [MJDefine.MJOperateType.OPREATE_PENG] = 2, --碰操作
- [MJDefine.MJOperateType.OPREATE_ZHIGANG] = 2, --直杠操作
- [MJDefine.MJOperateType.OPREATE_BAGANG] = 2, --巴杠
- [MJDefine.MJOperateType.OPREATE_ANGANG] = 2, --暗杠
- [MJDefine.MJOperateType.OPREATE_DIANPAOHU] = 2, --点炮胡牌
- [MJDefine.MJOperateType.OPREATE_ZIMOHU] = 2, --自胡牌
- [MJDefine.MJOperateType.OPREATE_QIANG_GANG_HU] = 1, --抢杠胡
- [MJDefine.MJOperateType.OPREATE_FEI] = 2, --飞
- [MJDefine.MJOperateType.OPREATE_TI] = 2, --提
- },
- [2] = {
- [MJDefine.MJOperateType.OPREATE_PENG] = 2, --碰操作
- [MJDefine.MJOperateType.OPREATE_ZHIGANG] = 2, --直杠操作
- [MJDefine.MJOperateType.OPREATE_BAGANG] = 2, --巴杠
- [MJDefine.MJOperateType.OPREATE_ANGANG] = 2, --暗杠
- [MJDefine.MJOperateType.OPREATE_DIANPAOHU] = 2, --点炮胡牌
- [MJDefine.MJOperateType.OPREATE_ZIMOHU] = 2, --自胡牌
- [MJDefine.MJOperateType.OPREATE_QIANG_GANG_HU] = 1, --抢杠胡
- [MJDefine.MJOperateType.OPREATE_FEI] = 2, --飞
- [MJDefine.MJOperateType.OPREATE_TI] = 2, --提
- }
- }
-
- function yibinmajiangSound.PlayOperateSound(sex,opType)
- local opName = yibinmajiangSound.OperateSoundConfig[opType];
- if opName then
- sex = dealSex(sex)
- local gender = (sex == 1) and yibinmajiangSound.man or yibinmajiangSound.women;
- local name = ""
- if yibinmajiangSound.soundType == 1 then
- name = string.format("%s/%s/%syibinmajiang_mj_%s_%s.ogg", yibinmajiangPath, gender, yibinmajiangSound.pre, sex, opName)
- else
- local opCount = OperateSoundCount[sex][opType];
- local index = math.random(1, opCount);
- name = string.format("%s/%s/%syibinmajiang_mj_%s_%s_%d.ogg", yibinmajiangPath, gender, yibinmajiangSound.pre, sex, opName, index);
- end
- playVoice(name)
- end
-
- if opType == MJDefine.MJOperateType.OPREATE_DIANPAOHU then
- local name = "mj_yibinmajiang/res/sound/yibinmajiang_dianpao.ogg";
- playVoice(name)
- end
- end
-
- function yibinmajiangSound.PlayOutCard()
- playVoice("mj_yibinmajiang/res/sound/yibinmajiang_card_dis.ogg")
- end
-
- function yibinmajiangSound.PlayClickCard()
- playVoice("mj_yibinmajiang/res/sound/yibinmajiang_card_click.ogg")
- end
-
- local MahjongCardSoundCount = {
- [1] = {
- [11] = 4, [12] = 4, [13] = 4, [14] = 3, [15] = 4, [16] = 3, [17] = 4, [18] = 3, [19] = 2,
- [21] = 4, [22] = 3, [23] = 3, [24] = 4, [25] = 3, [26] = 3, [27] = 4, [28] = 3, [29] = 3,
- },
- [2] = {
- [11] = 4, [12] = 4, [13] = 4, [14] = 3, [15] = 4, [16] = 3, [17] = 4, [18] = 3, [19] = 2,
- [21] = 4, [22] = 3, [23] = 3, [24] = 4, [25] = 3, [26] = 3, [27] = 4, [28] = 3, [29] = 3,
- }
- }
-
- function yibinmajiangSound.PlayMJSound(sex,value)
- sex = dealSex(sex)
- local name
- if yibinmajiangSound.soundType == 1 then
- -- name = string.format("%s/%s/%syibinmajiang_mj_%s_%x.ogg", yibinmajiangPath,sex ==1 and yibinmajiangSound.man or yibinmajiangSound.women, yibinmajiangSound.pre, sex, value)
-
- -- 使用基类
- name = string.format("%s/%s/%sbase_mj_%s_%x.ogg", "mj/res/sound", (sex == 1) and "c_man" or "c_women", "c_", sex, value)
- else
- -- 没有多种声音,只有1中,所有不需要使用随机
- -- local v = tonumber(string.format("%x", value));
- -- local mjCount = MahjongCardSoundCount[sex][v];
- -- local index = math.random(1, mjCount);
- -- name = string.format("%s/%s/%syibinmajiang_mj_%s_%x_%d.ogg", yibinmajiangPath,sex ==1 and yibinmajiangSound.man or yibinmajiangSound.women, yibinmajiangSound.pre, sex, value, index)
- name = string.format("%s/%s/%syibinmajiang_mj_%s_%x.ogg", yibinmajiangPath,sex ==1 and yibinmajiangSound.man or yibinmajiangSound.women, yibinmajiangSound.pre, sex, value)
- end
- playVoice(name)
- end
-
- --飘音效
- function yibinmajiangSound.PlayPiaoSound(sex, value)
- -- sex = dealSex(sex)
- -- local name = ""
- -- if sex == 1 then
- -- name = string.format("%s/%s/%sbase_mj_%s_piao.ogg", "mj/res/sound","c_man", "c_", sex)
- -- else
- -- name = string.format("%s/%s/%sbase_mj_%s_piao.ogg", "mj/res/sound","c_women", "c_", sex)
- -- end
- -- playVoice(name)
-
- sex = dealSex(sex)
- local value = value or 0
- local name
- if yibinmajiangSound.soundType == 1 then
- if value == 1 then
- name = string.format("%s/%s/%sbase_mj_%s_piao.ogg", "mj/res/sound", (sex == 1) and "c_man" or "c_women", "c_", sex)
- end
- else
- name = string.format("%s/%s/%syibinmajiang_mj_%s_piao_%d.ogg", yibinmajiangPath, (sex == 1) and yibinmajiangSound.man or yibinmajiangSound.women, yibinmajiangSound.pre, sex, value)
- end
-
- if name then
- playVoice(name)
- end
- end
-
- function yibinmajiangSound.PlayGameBGM(bgmType)
- stopBGMusic()
- bgmType = bgmType or 1;
- -- if bgmType == 1 then
- -- playBGMusic("MJ_GameBGM", string.format("mj_yibinmajiang/res/sound/bgm/yibinmajiang_bgm_%d.ogg", bgmType));
- -- else
- -- playBGMusic("MJ_GameBGM", "mj_yibinmajiang/res/sound/bgm/yibinmajiang_bgm_2.ogg");
- -- end
-
- -- 只有1种BGM
- playBGMusic("MJ_GameBGM", "mj_yibinmajiang/res/sound/bgm/yibinmajiang_bgm_1.ogg");
- end
-
- function yibinmajiangSound.PlayBenJinSound ()
- local name = "mj_yibinmajiang/res/sound/yibinmajiang_fanluobo.ogg";
- playVoice(name)
- end
-
- function yibinmajiangSound.PlayGameStartSound (sex)
- sex = dealSex(sex)
- local name = string.format("mj_yibinmajiang/res/sound/yibinmajiang_zhengqi_%s.ogg", sex);
- playVoice(name)
- end
-
- --刮风音效
- function yibinmajiangSound.PlayWindSound()
- playVoice("mj_yibinmajiang/res/sound/yibinmajiang_wind.ogg")
- end
-
- --下雨音效
- function yibinmajiangSound.PlayRainSound()
- playVoice("mj_yibinmajiang/res/sound/yibinmajiang_rain.ogg")
- end
-
- return yibinmajiangSound
|