Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

264 рядки
11 KiB

  1. local zigongDefine=MJFramework.MJFrameworkClassImprot("mj.luaScript.MJDefine")
  2. zigongDefine.GameID = 42
  3. zigongDefine.IS_NEW_3D = true
  4. --碰牌后推送的听牌提示
  5. zigongDefine.MJEvent.OutCardTings="MJEvent_OutCardTings"
  6. zigongDefine.MJEvent.HuResponse = "MJEvent_HuResponse"
  7. --通知庄家爆牌
  8. zigongDefine.MJEvent.BankerBaoPai= "MJEvent_BankerBaoPai"
  9. --请求爆牌
  10. zigongDefine.MJEvent.BaoPaiRequest= "MJEvent_BaoPaiRequest"
  11. --广播爆牌
  12. zigongDefine.MJEvent.BaoPaiResponse = "MJEvent_BaoPaiResponse"
  13. --发送过操作
  14. zigongDefine.MJEvent.SendGuo = "MJEvent_SendGuo"
  15. --抢断操作操作
  16. zigongDefine.MJEvent.QiangDuanOperates = "MJEvent_QiangDuanOperates"
  17. --广播开始飘
  18. zigongDefine.MJEvent.StartPiao = "MJEvent_StartPiao"
  19. --请求飘
  20. zigongDefine.MJEvent.PiaoRequest = "MJEvent_PiaoRequest"
  21. --飘返回
  22. zigongDefine.MJEvent.PiaoResponse = "MJEvent_PiaoResponse"
  23. --红中是否参与碰杠
  24. zigongDefine.isTieGui = true
  25. --发牌是否自动对齐
  26. zigongDefine.isAutomatic = true
  27. --发牌时有操作可以出牌,并发送过操作
  28. zigongDefine.outCardSendGuo = false
  29. zigongDefine.isReady = false
  30. zigongDefine.isSendGuo = false
  31. zigongDefine.isLanguage = true
  32. --出牌速度
  33. zigongDefine.MJ_TIME_OUT_CARD=0.1
  34. zigongDefine.MJ_TIME_OUT_CARD_SCALE=0.1
  35. zigongDefine.MJ_TIME_OUT_CARD_WAIT=0.1
  36. zigongDefine.MJ_OUT_CARD_SCALE=0.5
  37. zigongDefine.MJRes = {
  38. [zigongDefine.DesktopType.TwoD] = {"mj/res/ui/zy_fangjian/mj.plist", "mj/res/ui/zy_fangjian/mj_2d.plist","mj/res/ui/zy_fangjian/mahjong/mj_2d_cards.plist",},
  39. [zigongDefine.DesktopType.ThreeD] = {"mj/res/ui/zy_fangjian/mj.plist", "mj/res/ui/zy_fangjian/mahjong/mj_3d_cards_1.plist", "mj/res/ui/zy_fangjian/mahjong/mj_3d_cards_2.plist", "mj/res/ui/zy_fangjian/mahjong/mj_2d_cards.plist","mj/res/ui/zy_fangjian/mj_2d.plist",},
  40. [zigongDefine.DesktopType.TwoDGold] = {"mj/res/ui/zy_fangjian/mj.plist","mj/res/ui/zy_fangjian/mj_2d_gold.plist", "mj/res/ui/zy_fangjian/mahjong/mj_2d_cards.plist"},
  41. }
  42. -- 游戏状态
  43. zigongDefine.GameStatus={
  44. GAME_STATUS_INIT = 0, --//初始状态
  45. GAME_STATUS_WAIT_BANKER_START = 1, --//等待庄家开始游戏
  46. GAME_STATUS_SHUFFLE = 2, --//洗牌中即定庄与开打之间的状态
  47. GAME_STATUS_GANG_AFTER = 3, --//杠完牌之后
  48. GAME_STATUS_WAIT_OUT_CARD = 4, --//等待玩家出牌
  49. GAME_STATUS_WAIT_OPERATE = 5, --//等待玩家操作
  50. GAME_STATUS_WAIT_QIANG_GANG_HU = 6, --//等待抢杠胡
  51. GAME_STATUS_ROUND_OVER = 9, --//小局结束
  52. GAME_STATUS_GAME_OVER = 10,--//总结算
  53. GAME_STATUS_WAIT_BAO_PAI = 11, --//等待闲家爆牌
  54. GAME_STATUS_WAIT_PIAO = 12, --//等待玩家飘操作
  55. }
  56. zigongDefine.MJOperateType={
  57. OPREATE_CANCEL = 0x0000, --没有任何操作
  58. OPREATE_CHUPAI = 0x0001, --出牌
  59. OPREATE_CHI = 0x0002, --吃操作
  60. OPREATE_PENG = 0x0004, --碰操作
  61. OPREATE_ZHIGANG = 0x0008, --直杠操作
  62. OPREATE_BAGANG = 0x0010, --巴杠
  63. OPREATE_ANGANG = 0x0020, --暗杠
  64. OPREATE_DIANPAOHU = 0x0040, --点炮胡牌
  65. OPREATE_ZIMOHU = 0x0080, --自胡牌
  66. OPREATE_GUOSHOUGANG = 0x0100, --过手杠 只做标识,操作值不会有
  67. OPREATE_MINGGANG = 0x0200, --明杠
  68. OPREATE_QIANG_GANG_HU = 0x0400, --抢杠胡
  69. }
  70. zigongDefine.MJOperateImage={
  71. [zigongDefine.MJOperateType.OPREATE_CANCEL]="mj/res/ui/zy_fangjian/operate/mj_btn_guo.png",
  72. [zigongDefine.MJOperateType.OPREATE_CHI]="mj/res/ui/zy_fangjian/operate/mj_btn_chi.png",
  73. [zigongDefine.MJOperateType.OPREATE_PENG]="mj/res/ui/zy_fangjian/operate/mj_btn_peng.png",
  74. [zigongDefine.MJOperateType.OPREATE_ZHIGANG]="mj/res/ui/zy_fangjian/operate/mj_btn_gang.png",
  75. [zigongDefine.MJOperateType.OPREATE_BAGANG]="mj/res/ui/zy_fangjian/operate/mj_btn_gang.png",
  76. [zigongDefine.MJOperateType.OPREATE_ANGANG]="mj/res/ui/zy_fangjian/operate/mj_btn_gang.png",
  77. [zigongDefine.MJOperateType.OPREATE_DIANPAOHU]="mj/res/ui/zy_fangjian/operate/mj_btn_hu.png",
  78. [zigongDefine.MJOperateType.OPREATE_ZIMOHU]="mj/res/ui/zy_fangjian/operate/mj_btn_hu.png",
  79. [zigongDefine.MJOperateType.OPREATE_QIANG_GANG_HU]="mj/res/ui/zy_fangjian/operate/mj_btn_qiang_gang_hu.png",
  80. }
  81. zigongDefine.MJGameHuType={
  82. HU_ZIMO = 1, --自摸
  83. HU_DIANPAO = 2, --点炮胡
  84. HU_QIANGGANG = 3, --抢杠胡
  85. }
  86. zigongDefine.MJGamePaiType = {
  87. PING_HU = 0x0001, --平胡
  88. QING_YI_SE = 0x0002, --清一色
  89. DUI_DUI_HU = 0x0004, --大对子
  90. QI_DUI = 0x0008, --七对胡
  91. DI_HU = 0x0010, --地胡
  92. TIAN_HU = 0x0020, --天胡
  93. GANG_SHANG_HUA = 0x0040, --杠上花
  94. GANG_SHANG_PAO = 0x0080, --杠上炮
  95. QIANG_GANG_HU = 0x0100, --抢杠胡
  96. KA_ER_TIAO = 0x0200, --卡二条
  97. BAO_PAI = 0x0400, --报牌
  98. BO_ZI_MO = 0x0800, --博自摸
  99. JINGGOUDIAO = 0x1000, --金钩钓
  100. HAI_DI_HU = 0x2000, --金钩炮
  101. HAI_DI_PAO = 0x4000, --海底炮
  102. LONG_QI_DUI_SC = 0x8000, --龙七对
  103. SHA_BAO = 0x10000, --杀报
  104. SHA_DU_ZI_MO = 0x20000, --杀博自摸
  105. DIAN_GANG_HUA = 0x40000, --点杠花
  106. }
  107. zigongDefine.MJGameHuStr = {
  108. [zigongDefine.MJGamePaiType.PING_HU] = "平胡",
  109. [zigongDefine.MJGamePaiType.QING_YI_SE] = "清一色",
  110. [zigongDefine.MJGamePaiType.DUI_DUI_HU] = "大对子",
  111. [zigongDefine.MJGamePaiType.QI_DUI] = "七对胡",
  112. [zigongDefine.MJGamePaiType.DI_HU] = "地胡",
  113. [zigongDefine.MJGamePaiType.TIAN_HU] = "天胡",
  114. [zigongDefine.MJGamePaiType.GANG_SHANG_HUA] = "杠上花",
  115. [zigongDefine.MJGamePaiType.GANG_SHANG_PAO] = "杠上炮",--"杠上炮"
  116. [zigongDefine.MJGamePaiType.QIANG_GANG_HU] = "抢杠胡",
  117. [zigongDefine.MJGamePaiType.KA_ER_TIAO] = "卡二条",
  118. [zigongDefine.MJGamePaiType.BAO_PAI] = "报牌",
  119. [zigongDefine.MJGamePaiType.BO_ZI_MO] = "博自摸",
  120. [zigongDefine.MJGamePaiType.JINGGOUDIAO] = "金钩钓",
  121. [zigongDefine.MJGamePaiType.HAI_DI_HU] = "金钩炮",
  122. [zigongDefine.MJGamePaiType.HAI_DI_PAO] = "海底炮",
  123. [zigongDefine.MJGamePaiType.LONG_QI_DUI_SC] = "龙七对",
  124. [zigongDefine.MJGamePaiType.SHA_BAO] = "杀报",
  125. [zigongDefine.MJGamePaiType.SHA_DU_ZI_MO] = "杀博自摸",
  126. [zigongDefine.MJGamePaiType.DIAN_GANG_HUA] = "点杠花",
  127. }
  128. --合并字符
  129. zigongDefine.MJGameHuMargeTab = {
  130. {tab={"清一色","七对胡","1归"},name="清龙七对"},
  131. {tab={"清一色","七对胡","2归"},name="清双龙七对"},
  132. {tab={"清一色","七对胡","3归"},name="清三龙七对"},
  133. {tab={"清一色","大对子"},name="清大对"},
  134. {tab={"清一色","七对胡"},name="清七对"},
  135. {tab={"1归","七对胡"},name="龙七对"},
  136. {tab={"2归","七对胡"},name="双龙七对"},
  137. {tab={"3归","七对胡"},name="三龙七对"},
  138. }
  139. zigongDefine.MJGameChatTxt = {
  140. [1] = "快点快点!多整两盘哦!",
  141. [2] = "催啥子催,我看叫哪张!",
  142. [3] = "你们太要不得了哦,只晓得按到我胡安",
  143. [4] = "你们整得好哦!我要来我要来!",
  144. [5] = "输家不开口,赢家不准走!",
  145. [6] = "我有事,先整一盘就走了,你们整开心哈",
  146. [7] = "美女,你胡撒子,我打给你哇",
  147. [8] = "帅哥,你胡撒子,我打给你哇",
  148. }
  149. --[[zigongDefine.MJChatTxt = {
  150. [1] = {txt="快点快点!多整两盘哦!",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_1.ogg"},
  151. [2] = {txt="催啥子催,我看叫哪张!",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_2.ogg"},
  152. [3] = {txt="你们太要不得了哦,只晓得按到我胡安!",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_3.ogg"},
  153. [4] = {txt="你们整得好哦!我要来我要来!",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_4.ogg"},
  154. [5] = {txt="输家不开口,赢家不准走!",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_5.ogg"},
  155. [6] = {txt="我有事,先整一盘就走了,你们整开心哈",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_6.ogg"},
  156. [7] = {txt="美女,你胡撒子,我打给你哇",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_7.ogg"},
  157. [8] = {txt="帅哥,你胡撒子,我打给你哇",oggStandard="mj/res/sound/f_%s/f_base_mj_%s_text_8.ogg"},
  158. }--]]
  159. zigongDefine.MJChatTxt = {
  160. [1] = {txt="哎呀,咋子比乌龟还慢嘛!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_1.ogg"},
  161. [2] = {txt="今天好霉,下手不要那么重嘛!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_2.ogg"},
  162. [3] = {txt="快点快点,不要打酱油咯!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_3.ogg"},
  163. [4] = {txt="你弹簧手是不是,快点出!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_4.ogg"},
  164. [5] = {txt="你是想哭都哭不出来!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_5.ogg"},
  165. [6] = {txt="你太牛了,必须点个赞!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_6.ogg"},
  166. [7] = {txt="菩萨菩萨,来个卡卡!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_7.ogg"},
  167. [8] = {txt="万水千山总是情,多输一点行不行!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_8.ogg"},
  168. [9] = {txt="我的妈呀,不要摸啊!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_9.ogg"},
  169. [10] = {txt="我的牌打的太好了!",oggStandard="mj_zigong/res/sound/f_%s/f_zg_%s_text_10.ogg"},
  170. }
  171. zigongDefine.LuoBoPos = {
  172. [1] = {[1] = cc.p(getWinSize().width/2,getWinSize().height/2-40)},
  173. [2] = {[1] = cc.p(getWinSize().width/2-50,getWinSize().height/2),[2] = cc.p(getWinSize().width/2+50,getWinSize().height/2)},
  174. }
  175. --操作值映射到实际显示麻将组类型
  176. zigongDefine.MJOperateToGroupType={
  177. [zigongDefine.MJOperateType.OPREATE_CHI]=zigongDefine.MJGroupType.Chi,
  178. [zigongDefine.MJOperateType.OPREATE_PENG]=zigongDefine.MJGroupType.Peng,
  179. [zigongDefine.MJOperateType.OPREATE_ZHIGANG]=zigongDefine.MJGroupType.Gang,
  180. [zigongDefine.MJOperateType.OPREATE_BAGANG]=zigongDefine.MJGroupType.Gang,
  181. [zigongDefine.MJOperateType.OPREATE_GUOSHOUGANG]=zigongDefine.MJGroupType.Gang,
  182. [zigongDefine.MJOperateType.OPREATE_ANGANG]=zigongDefine.MJGroupType.AnGang,
  183. }
  184. zigongDefine.CHANGE_GAME_BG =
  185. {
  186. [3] = {
  187. ['2d'] = "mj_zigong/res/zy_fangjian/zigong_2d_bg.png",
  188. ['3d'] = "mj_zigong/res/zy_fangjian/zigong_3d_bg.jpg",
  189. },
  190. [2] = {
  191. ['2d'] = "mj_zigong/res/zy_fangjian/zigong_jingdian_2d.png",
  192. ['3d'] = "mj_zigong/res/zy_fangjian/zigong_jingdian_25d.jpg",
  193. },
  194. [1] = {
  195. ['2d'] = "mj_zigong/res/zy_fangjian/zigong_shishang_2d.png",
  196. ['3d'] = "mj_zigong/res/zy_fangjian/zigong_shishang_25d.jpg",
  197. },
  198. }
  199. function zigongDefine.cleanOtherCache()
  200. local preload = package.loaded
  201. for k, v in pairs(package.loaded or {}) do
  202. --local res1 = string.find( k, "mj.luaScript") or 0
  203. local res2 = string.find( k, "mj_huamajiang.luaScript") or 0
  204. if res2 > 0 then
  205. package.loaded[k] = nil
  206. end
  207. end
  208. end
  209. function loadMJConfig(desktopType)
  210. local AllMJConfigs = {
  211. [zigongDefine.DesktopType.ThreeD] = "mj_zigong.luaScript.Views.3d.MJConfig_3d",
  212. [zigongDefine.DesktopType.TwoD] = "mj_zigong.luaScript.Views.2d.MJConfig_2d",
  213. [zigongDefine.DesktopType.TwoDGold] = "mj_zigong.luaScript.Views.2d.MJConfig_2d_gold",
  214. }
  215. desktopType = desktopType or app.systemSetting.info.viewType
  216. if not desktopType then
  217. desktopType = zigongDefine.DesktopType.TwoD
  218. end
  219. -- 修复2d金黄切墨绿时,部分配置没有重写成功的bug
  220. zigongDefine.cleanOtherCache()
  221. package.loaded['mj.luaScript.Common.2d.CommonMahjongConfig'] = nil
  222. zigongDefine.MJConfig_3d = require(AllMJConfigs[zigongDefine.DesktopType.ThreeD])
  223. if desktopType ~= zigongDefine.DesktopType.ThreeD then
  224. zigongDefine.MJConfig_2d = require(AllMJConfigs[desktopType])
  225. else
  226. zigongDefine.MJConfig_2d = require(AllMJConfigs[zigongDefine.DesktopType.TwoD])
  227. end
  228. end
  229. zigongDefine.loadMJConfig = loadMJConfig
  230. loadMJConfig()
  231. return zigongDefine