You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

300 rivejä
7.7 KiB

  1. local PdkSoundHelper = class("PdkSoundHelper")
  2. --普通话路径
  3. local PRE_SEX_PATH = {
  4. [0] = "pk_luzhoupdk/res/snd/man/",
  5. [1] = "pk_luzhoupdk/res/snd/man/",
  6. [2] = "pk_luzhoupdk/res/snd/woman/w_",
  7. }
  8. --方言路径
  9. local PRE_SEX_FY_PATH = {
  10. [0] = "pk_luzhoupdk/res/snd/man_fy/",
  11. [1] = "pk_luzhoupdk/res/snd/man_fy/",
  12. [2] = "pk_luzhoupdk/res/snd/woman_fy/w_",
  13. }
  14. local PDK_SND_FILE = {
  15. PASS = "lzpdk_buyao.ogg",
  16. LIANDUI = "lzpdk_liandui.ogg",
  17. THREE_AND_TWO = "lzpdk_sandaiyidui.ogg",
  18. THREE_AND_ONE = "lzpdk_sandaiyi.ogg",
  19. THREE = "lzpdk_sange.ogg",
  20. FOUT_AND_THREE = "lzpdk_sidaisan.ogg",
  21. FOUT_AND_ONE = "",
  22. BOMB = "lzpdk_zhadan.ogg",
  23. SHUNZI = "lzpdk_shunzi.ogg",
  24. PLANE = "lzpdk_feiji.ogg",
  25. BAOJING = "lzpdk_baojing1.ogg",
  26. TUPLE = {[0]="Man_", [1]="Man_", [2]="Woman_"}
  27. }
  28. local PDK_FY_SND_FILE = {
  29. PASS = "lzpdk_fy_buyao.ogg",
  30. LIANDUI = "lzpdk_fy_liandui.ogg",
  31. THREE_AND_TWO = "lzpdk_fy_sandaiyidui.ogg",
  32. THREE_AND_ONE = "lzpdk_fy_sandaiyi.ogg",
  33. THREE = "lzpdk_fy_sange.ogg",
  34. FOUT_AND_THREE = "lzpdk_fy_sidaisan.ogg",
  35. FOUT_AND_ONE = "",
  36. BOMB = "lzpdk_fy_zhadan.ogg",
  37. SHUNZI = "lzpdk_fy_shunzi.ogg",
  38. PLANE = "lzpdk_fy_feiji.ogg",
  39. BAOJING = "lzpdk_fy_baojing1.ogg",
  40. }
  41. local PDK_SND_VAL = {--A=1, 2=2, 3=3 ...
  42. 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 1, 2,14
  43. }
  44. local PDK_SEX = {
  45. [0] = "Man",
  46. [1] = "Man",
  47. [2] = "Woman"
  48. }
  49. local function dealSex(s)
  50. local sex=tonumber(s)
  51. if sex~=1 and sex~=2 then
  52. sex=1
  53. end
  54. return sex
  55. end
  56. function PdkSoundHelper:ctor()
  57. end
  58. function PdkSoundHelper:alarm()
  59. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_timeup_alarm.ogg")
  60. end
  61. function PdkSoundHelper:win()
  62. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_audio_win.ogg")
  63. end
  64. function PdkSoundHelper:lose()
  65. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_audio_win.ogg")
  66. -- playVoice("pk_luzhoupdk/res/snd/common/lzpdk_audio_lose.ogg")
  67. end
  68. function PdkSoundHelper:liuju()
  69. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_audio_liuju.ogg")
  70. end
  71. -- 大你、压死
  72. function PdkSoundHelper:daNi( sex )
  73. sex = sex or 0
  74. sex = dealSex(sex)
  75. if self:getLanguageType() == 1 then
  76. local idx = math.random(3)
  77. playVoice(PRE_SEX_PATH[sex]..string.format("lzpdk_dani%d.ogg", idx))
  78. end
  79. end
  80. -- 就剩一张牌了
  81. function PdkSoundHelper:single( sex )
  82. sex = sex or 0
  83. sex = dealSex(sex)
  84. --延时0.5秒播放,解决报单和前一手牌的牌型音效同时播问题
  85. app.mainScene:runAction(cc.Sequence:create(cc.DelayTime:create(0.5), cc.CallFunc:create(function ()
  86. if self:getLanguageType() == 1 then
  87. playVoice(PRE_SEX_PATH[sex].."lzpdk_baojing1.ogg")
  88. else
  89. playVoice(PRE_SEX_FY_PATH[sex].."lzpdk_fy_baojing1.ogg")
  90. end
  91. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_Special_alert.ogg")
  92. end)))
  93. end
  94. -- 发牌音效
  95. function PdkSoundHelper:playSend()
  96. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_audio_card_out.ogg")
  97. end
  98. -- 打牌音效
  99. function PdkSoundHelper:playOut()
  100. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_Special_give.ogg")
  101. end
  102. -- 春天音效
  103. function PdkSoundHelper:spring()
  104. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_Special_Chuntian.ogg")
  105. end
  106. -- 选择牌音效
  107. function PdkSoundHelper:selectSnd()
  108. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_SpecSelectCard.ogg")
  109. end
  110. -- 播放游戏背景音乐
  111. function PdkSoundHelper:playBgMusic(tp)
  112. if not tp then
  113. playBGMusic("LZPDK_GAME", "pk_luzhoupdk/res/snd/lzpdk_bgm.ogg")--
  114. return
  115. end
  116. stopBGMusic()
  117. if tp == 1 then
  118. playBGMusic("LZPDK_GAME","pk_luzhoupdk/res/snd/lzpdk_bgm.ogg")
  119. elseif tp == 2 then
  120. playBGMusic("LZPDK_GAME","pk_luzhoupdk/res/snd/lzpdk_bgmjd.ogg")
  121. end
  122. end
  123. -- 报警音效
  124. function PdkSoundHelper:effectWarm( sex )
  125. sex = sex or 0
  126. sex = dealSex(sex)
  127. if self:getLanguageType() == 1 then
  128. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.BAOJING)
  129. else
  130. playVoice(PRE_SEX_FY_PATH[sex]..PDK_FY_SND_FILE.BAOJING)
  131. end
  132. end
  133. -- 要不起音效
  134. function PdkSoundHelper:effectPass( sex, idx )
  135. sex = sex or 0
  136. idx = idx or 4
  137. sex = dealSex(sex)
  138. if self:getLanguageType() == 1 then
  139. playVoice(PRE_SEX_PATH[sex]..string.format("lzpdk_buyao%d.ogg", idx))
  140. else
  141. playVoice(PRE_SEX_FY_PATH[sex]..string.format("lzpdk_fy_buyao%d.ogg", 1))
  142. end
  143. end
  144. -- 单张音效
  145. function PdkSoundHelper:effectSingle( sex ,val )
  146. sex = sex or 0
  147. sex = dealSex(sex)
  148. if self:getLanguageType() == 1 then
  149. local file = string.format("lzpdk_pk_%d.ogg", PDK_SND_VAL[val])
  150. playVoice(PRE_SEX_PATH[sex]..file)
  151. else
  152. local file = string.format("lzpdk_pk_fy_%d.ogg", PDK_SND_VAL[val])
  153. playVoice(PRE_SEX_FY_PATH[sex]..file)
  154. end
  155. end
  156. -- 播放对子音效
  157. function PdkSoundHelper:effectDouble( sex, val )
  158. sex = sex or 0
  159. sex = dealSex(sex)
  160. if self:getLanguageType() == 1 then
  161. local file = string.format("lzpdk_dui%d.ogg", PDK_SND_VAL[val])
  162. playVoice(PRE_SEX_PATH[sex]..file)
  163. else
  164. local file = string.format("lzpdk_dui_fy_%d.ogg", PDK_SND_VAL[val])
  165. playVoice(PRE_SEX_FY_PATH[sex]..file)
  166. end
  167. end
  168. -- 播放三个
  169. function PdkSoundHelper:effectThree( sex, val )
  170. sex = sex or 0
  171. sex = dealSex(sex)
  172. if self:getLanguageType() == 1 then
  173. local file = string.format("lzpdk_%s_tuple%d.ogg", PDK_SEX[sex], PDK_SND_VAL[val])
  174. playVoice(PRE_SEX_PATH[sex]..file)
  175. else
  176. playVoice(PRE_SEX_FY_PATH[sex].."lzpdk_fy_sange.ogg")
  177. end
  178. end
  179. -- 三带二
  180. function PdkSoundHelper:effect3And2( sex , tp)--tp 4三带二张 5三带一对
  181. sex = sex or 0
  182. sex = dealSex(sex)
  183. if self:getLanguageType() == 1 then
  184. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.THREE_AND_TWO)
  185. else
  186. if app.room and app.room.isMustBomb and app.room.isMustBomb == 1 then
  187. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.THREE_AND_TWO)
  188. elseif tp and tp == 4 then
  189. playVoice(PRE_SEX_FY_PATH[sex].."lzpdk_fy_sandaisan.ogg")
  190. elseif tp and tp == 5 then
  191. playVoice(PRE_SEX_FY_PATH[sex].."lzpdk_fy_sandaiyidui.ogg")
  192. end
  193. end
  194. end
  195. -- 三带一
  196. function PdkSoundHelper:effect3And1( sex )
  197. sex = sex or 0
  198. sex = dealSex(sex)
  199. if self:getLanguageType() == 1 then
  200. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.THREE_AND_ONE)
  201. end
  202. end
  203. -- 炸弹
  204. function PdkSoundHelper:effectBomb( sex )
  205. sex = sex or 0
  206. sex = dealSex(sex)
  207. if self:getLanguageType() == 1 then
  208. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.BOMB)
  209. else
  210. playVoice(PRE_SEX_FY_PATH[sex]..PDK_FY_SND_FILE.BOMB)
  211. end
  212. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_Special_Long_Bomb.ogg")
  213. end
  214. -- 四带三
  215. function PdkSoundHelper:effect4And3( sex )
  216. sex = sex or 0
  217. sex = dealSex(sex)
  218. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.FOUT_AND_THREE)
  219. end
  220. -- 四带一
  221. function PdkSoundHelper:effect4And1( sex )
  222. sex = sex or 0
  223. sex = dealSex(sex)
  224. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.FOUT_AND_ONE)
  225. end
  226. -- 连对
  227. function PdkSoundHelper:effectLiandui( sex )
  228. sex = sex or 0
  229. sex = dealSex(sex)
  230. if self:getLanguageType() == 1 then
  231. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.LIANDUI)
  232. else
  233. playVoice(PRE_SEX_FY_PATH[sex]..PDK_FY_SND_FILE.LIANDUI)
  234. end
  235. end
  236. -- 顺子
  237. function PdkSoundHelper:effectShunzi( sex )
  238. sex = sex or 0
  239. sex = dealSex(sex)
  240. if self:getLanguageType() == 1 then
  241. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.SHUNZI)
  242. else
  243. playVoice(PRE_SEX_FY_PATH[sex]..PDK_FY_SND_FILE.SHUNZI)
  244. end
  245. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_series.ogg")
  246. end
  247. -- 飞机
  248. function PdkSoundHelper:effectPlane( sex )
  249. sex = sex or 0
  250. sex = dealSex(sex)
  251. if self:getLanguageType() == 1 then
  252. playVoice(PRE_SEX_PATH[sex]..PDK_SND_FILE.PLANE)
  253. else
  254. playVoice(PRE_SEX_FY_PATH[sex]..PDK_FY_SND_FILE.PLANE)
  255. end
  256. playVoice("pk_luzhoupdk/res/snd/common/lzpdk_Special_plane.ogg")
  257. end
  258. function PdkSoundHelper:getLanguageType()
  259. local cacheLan = "LanguageType"..GAME_IDS.hejiangPaoDeKuai
  260. local lanType = tonumber(loadUserInfo(cacheLan)) or 1--1普通话2方言
  261. --local yuyan1 = (lanType ==1 and "putonghua" or "fangyan")
  262. --local yuyan2 = (lanType ==1 and "pth" or "fy")
  263. return lanType
  264. end
  265. return PdkSoundHelper