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.

765 lines
29 KiB

  1. local xzddDefine=MJFramework.MJFrameworkClassImprot("mj.luaScript.MJDefine")
  2. xzddDefine.GameID = 51
  3. xzddDefine.IS_NEW_3D = true
  4. --碰牌后推送的听牌提示
  5. xzddDefine.MJEvent.OutCardTings="MJEvent_OutCardTings"
  6. xzddDefine.MJEvent.HuResponse = "MJEvent_HuResponse"
  7. --通知庄家爆牌
  8. xzddDefine.MJEvent.BankerBaoPai= "MJEvent_BankerBaoPai"
  9. --请求爆牌
  10. xzddDefine.MJEvent.BaoPaiRequest= "MJEvent_BaoPaiRequest"
  11. --广播爆牌
  12. xzddDefine.MJEvent.BaoPaiResponse = "MJEvent_BaoPaiResponse"
  13. --发送过操作
  14. xzddDefine.MJEvent.SendGuo = "MJEvent_SendGuo"
  15. --抢断操作操作
  16. xzddDefine.MJEvent.QiangDuanOperates = "MJEvent_QiangDuanOperates"
  17. --广播开始飘
  18. xzddDefine.MJEvent.StartPiao = "MJEvent_StartPiao"
  19. --请求飘
  20. xzddDefine.MJEvent.PiaoRequest = "MJEvent_PiaoRequest"
  21. --飘返回
  22. xzddDefine.MJEvent.PiaoResponse = "MJEvent_PiaoResponse"
  23. --通知换三张
  24. xzddDefine.MJEvent.NoticeSwapCard = "MJEvent_NoticeSwapCard"
  25. --请求换三张
  26. xzddDefine.MJEvent.RequestSwapCard = "MJEvent_RequestSwapCard"
  27. --换三张错误
  28. xzddDefine.MJEvent.SwapCardErr = "MJEvent_SwapCardErr"
  29. --换三张成功
  30. xzddDefine.MJEvent.SwapCardSucc = "MJEvent_SwapCardSucc"
  31. --换三张成功信息
  32. xzddDefine.MJEvent.SwapCardSuccInfo = "MJEvent_SwapCardSuccInfo"
  33. --通知定缺
  34. xzddDefine.MJEvent.NoticeDingQue = "MJEvent_NoticeDingQue"
  35. --请求定缺
  36. xzddDefine.MJEvent.RequestDingQue = "MJEvent_RequestDingQue"
  37. --定缺成功
  38. xzddDefine.MJEvent.DingQueSucc = "MJEvent_DingQueSucc"
  39. --定缺成功广播告诉玩家定缺类型
  40. xzddDefine.MJEvent.DingQueSuccInfo = "MJEvent_DingQueSuccInfo"
  41. --定缺之后的操作,内容和0x8106保持统一 广播桌子上所有玩家庄家起手操作
  42. xzddDefine.MJEvent.AfterDingQue = "MJEvent_AfterDingQue"
  43. --出牌前检测是否先要发送过
  44. xzddDefine.MJEvent.checkIsNeedSendGuo = "MJEvent_checkIsNeedSendGuo"
  45. --红中是否参与碰杠
  46. xzddDefine.isTieGui = true
  47. --发牌是否自动对齐
  48. xzddDefine.isAutomatic = true
  49. --发牌时有操作可以出牌,并发送过操作
  50. xzddDefine.outCardSendGuo = false
  51. xzddDefine.isReady = false
  52. xzddDefine.isSendGuo = false
  53. xzddDefine.isLanguage = true
  54. --出牌速度
  55. xzddDefine.MJ_TIME_OUT_CARD=0.1
  56. xzddDefine.MJ_TIME_OUT_CARD_SCALE=0.1
  57. xzddDefine.MJ_TIME_OUT_CARD_WAIT=0.1
  58. xzddDefine.MJ_OUT_CARD_SCALE=0.5
  59. xzddDefine.MJRes = {
  60. [xzddDefine.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",},
  61. [xzddDefine.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",},
  62. [xzddDefine.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"},
  63. [xzddDefine.DesktopType.TwoDL] = {"mj/res/ui/zy_fangjian/mj.plist", "mj/res/ui/zy_fangjian/mj_2d.plist","mj_xzdd/res/zy_fangjian/mj_2d_lgold.plist"},
  64. }
  65. -- 游戏状态
  66. xzddDefine.GameStatus={
  67. GAME_STATUS_INIT = 0, --//初始状态
  68. GAME_STATUS_WAIT_BANKER_START = 1, --//等待庄家开始游戏
  69. GAME_STATUS_SHUFFLE = 2, --//洗牌中即定庄与开打之间的状态
  70. GAME_STATUS_GANG_AFTER = 3, --//杠完牌之后
  71. GAME_STATUS_WAIT_OUT_CARD = 4, --//等待玩家出牌
  72. GAME_STATUS_WAIT_OPERATE = 5, --//等待玩家操作
  73. GAME_STATUS_WAIT_QIANG_GANG_HU = 6, --//等待抢杠胡
  74. GAME_STATUS_WAIT_SWAP_CARDS = 7, --//等待换牌
  75. GAME_STATUS_WAIT_SELECT_QUE = 8, --//等待选缺
  76. GAME_STATUS_ROUND_OVER = 9, --//小局结束
  77. GAME_STATUS_GAME_OVER = 10,--//总结算
  78. }
  79. xzddDefine.MJOperateType={
  80. OPREATE_CANCEL = 0x0000, --没有任何操作
  81. OPREATE_CHUPAI = 0x0001, --出牌
  82. OPREATE_CHI = 0x0002, --吃操作
  83. OPREATE_PENG = 0x0004, --碰操作
  84. OPREATE_ZHIGANG = 0x0008, --直杠操作
  85. OPREATE_BAGANG = 0x0010, --巴杠
  86. OPREATE_ANGANG = 0x0020, --暗杠
  87. OPREATE_DIANPAOHU = 0x0040, --点炮胡牌
  88. OPREATE_ZIMOHU = 0x0080, --自胡牌
  89. OPREATE_GUOSHOUGANG = 0x0100, --过手杠 只做标识,操作值不会有
  90. OPREATE_MINGGANG = 0x0200, --明杠
  91. OPREATE_QIANG_GANG_HU = 0x0400, --抢杠胡
  92. }
  93. --[[xzddDefine.MJOperateType={
  94. OPREATE_CANCEL = 0x0000, --没有任何操作
  95. OPREATE_ZIMOHU = 0x0001, --自胡牌
  96. OPREATE_DIANPAOHU = 0x0002, --点炮胡牌
  97. OPREATE_CHI = 0x0004, --吃操作
  98. OPREATE_PENG = 0x0008, --碰操作
  99. OPREATE_ZHIGANG = 0x0010, --直杠操作
  100. OPREATE_BAGANG = 0x0020, --巴杠
  101. OPREATE_ANGANG = 0x0040, --暗杠
  102. OPREATE_MINGGANG = 0x0200, --明杠
  103. }--]]
  104. xzddDefine.MJOperateImage={
  105. [xzddDefine.MJOperateType.OPREATE_CANCEL]="mj/res/ui/zy_fangjian/operate/mj_btn_guo.png",
  106. [xzddDefine.MJOperateType.OPREATE_CHI]="mj/res/ui/zy_fangjian/operate/mj_btn_chi.png",
  107. [xzddDefine.MJOperateType.OPREATE_PENG]="mj/res/ui/zy_fangjian/operate/mj_btn_peng.png",
  108. [xzddDefine.MJOperateType.OPREATE_ZHIGANG]="mj/res/ui/zy_fangjian/operate/mj_btn_gang.png",
  109. [xzddDefine.MJOperateType.OPREATE_BAGANG]="mj/res/ui/zy_fangjian/operate/mj_btn_gang.png",
  110. [xzddDefine.MJOperateType.OPREATE_ANGANG]="mj/res/ui/zy_fangjian/operate/mj_btn_gang.png",
  111. [xzddDefine.MJOperateType.OPREATE_DIANPAOHU]="mj/res/ui/zy_fangjian/operate/mj_btn_hu.png",
  112. [xzddDefine.MJOperateType.OPREATE_ZIMOHU]="mj/res/ui/zy_fangjian/operate/mj_btn_hu.png",
  113. [xzddDefine.MJOperateType.OPREATE_QIANG_GANG_HU]="mj/res/ui/zy_fangjian/operate/mj_btn_qiang_gang_hu.png",
  114. }
  115. xzddDefine.MJGameHuType={
  116. HU_ZIMO = 1, --自摸
  117. HU_DIANPAO = 2, --点炮胡
  118. HU_QIANGGANG = 3, --抢杠胡
  119. }
  120. --[[xzddDefine.MJGamePaiType = {
  121. PING_HU = 0x0001, --平胡
  122. QING_YI_SE = 0x0002, --清一色
  123. DUI_DUI_HU = 0x0004, --大对子
  124. QI_DUI = 0x0008, --七对胡
  125. DI_HU = 0x0010, --地胡
  126. TIAN_HU = 0x0020, --天胡
  127. GANG_SHANG_HUA = 0x0040, --杠上花
  128. GANG_SHANG_PAO = 0x0080, --杠上炮
  129. QIANG_GANG_HU = 0x0100, --抢杠胡
  130. KA_ER_TIAO = 0x0200, --卡二条
  131. BAO_PAI = 0x0400, --报牌
  132. BO_ZI_MO = 0x0800, --博自摸
  133. JINGGOUDIAO = 0x1000, --金钩钓
  134. HAI_DI_HU = 0x2000, --金钩炮
  135. HAI_DI_PAO = 0x4000, --海底炮
  136. LONG_QI_DUI_SC = 0x8000, --龙七对
  137. SHA_BAO = 0x10000, --杀报
  138. SHA_DU_ZI_MO = 0x20000, --杀博自摸
  139. DIAN_GANG_HUA = 0x40000, --点杠花
  140. }--]]
  141. xzddDefine.MJGamePaiType = {
  142. PING_HU = 0x01, -- 平胡
  143. QI_DUI = 0x02, -- 七对胡(2番)
  144. TIAN_HU = 0x03, -- 天胡
  145. DI_HU = 0x04, -- 地胡
  146. QING_LONG_QI_DUI = 0x05, -- 清龙七对
  147. LONG_QI_DUI = 0x06, -- 龙七对
  148. QING_QI_DUI = 0x07, -- 清七对
  149. QING_YAO_JIU = 0x08, -- 清幺九
  150. QING_DUI = 0x09, -- 清对
  151. ZHONG_ZHANG_HU = 0x10, -- 中张
  152. JIANG_QI_DUI = 0x11, -- 将七对
  153. JIA_XIN_WU = 0x12, -- 夹心五
  154. SI_DUI_SC = 0x13, -- 四对
  155. LONG_SI_DUI_SC = 0x14, -- 龙四对
  156. QING_SI_DUI_SC = 0x15, -- 清四对
  157. QING_LONG_SI_DUI_SC = 0x16, -- 清龙四对
  158. JIANG_SI_DUI_SC = 0x17, -- 将四对
  159. KA_ER_TIAO_SC = 0x18, -- 卡二条
  160. JIANG_DUI = 0x0A, -- 将对
  161. QING_YI_SE = 0x0B, -- 清一色
  162. DAI_YAO_JIU = 0x0C, -- 带幺九
  163. DUI_DUI_HU = 0x0D, -- 对对胡
  164. MEN_QING_HU = 0x0E, -- 门清
  165. }
  166. xzddDefine.MJGameHuStr = {
  167. [xzddDefine.MJGamePaiType.PING_HU] = "平胡",
  168. [xzddDefine.MJGamePaiType.QI_DUI] = "七对胡",
  169. [xzddDefine.MJGamePaiType.TIAN_HU] = "天胡",
  170. [xzddDefine.MJGamePaiType.DI_HU] = "地胡",
  171. [xzddDefine.MJGamePaiType.QING_LONG_QI_DUI] = "清龙七对",
  172. [xzddDefine.MJGamePaiType.LONG_QI_DUI] = "龙七对",
  173. [xzddDefine.MJGamePaiType.QING_QI_DUI] = "清七对",
  174. [xzddDefine.MJGamePaiType.QING_YAO_JIU] = "清幺九",
  175. [xzddDefine.MJGamePaiType.QING_DUI] = "清对",
  176. [xzddDefine.MJGamePaiType.JIANG_DUI] = "将对",
  177. [xzddDefine.MJGamePaiType.QING_YI_SE] = "清一色",
  178. [xzddDefine.MJGamePaiType.DAI_YAO_JIU] = "带幺九",
  179. [xzddDefine.MJGamePaiType.DUI_DUI_HU] = "对对胡",
  180. [xzddDefine.MJGamePaiType.MEN_QING_HU] = "门清",
  181. [xzddDefine.MJGamePaiType.ZHONG_ZHANG_HU] = "中张",
  182. [xzddDefine.MJGamePaiType.JIANG_QI_DUI] = "将七对",
  183. [xzddDefine.MJGamePaiType.JIA_XIN_WU] = "夹心五",
  184. [xzddDefine.MJGamePaiType.SI_DUI_SC] = "四对",
  185. [xzddDefine.MJGamePaiType.LONG_SI_DUI_SC] = "龙四对",
  186. [xzddDefine.MJGamePaiType.QING_SI_DUI_SC] = "清四对",
  187. [xzddDefine.MJGamePaiType.QING_LONG_SI_DUI_SC] = "清龙四对",
  188. [xzddDefine.MJGamePaiType.JIANG_SI_DUI_SC] = "将四对",
  189. [xzddDefine.MJGamePaiType.KA_ER_TIAO_SC] = "卡二条",
  190. }
  191. --合并字符
  192. xzddDefine.MJGameHuMargeTab = {
  193. {tab={"清一色","七对胡","1归"},name="清龙七对"},
  194. {tab={"清一色","七对胡","2归"},name="清双龙七对"},
  195. {tab={"清一色","七对胡","3归"},name="清三龙七对"},
  196. {tab={"清一色","大对子"},name="清大对"},
  197. {tab={"清一色","七对胡"},name="清七对"},
  198. {tab={"1归","七对胡"},name="龙七对"},
  199. {tab={"2归","七对胡"},name="双龙七对"},
  200. {tab={"3归","七对胡"},name="三龙七对"},
  201. }
  202. xzddDefine.MJGameChatTxt = {
  203. [1] = "快点快点!多整两盘哦!",
  204. [2] = "催啥子催,我看叫哪张!",
  205. [3] = "你们太要不得了哦,只晓得按到我胡安",
  206. [4] = "你们整得好哦!我要来我要来!",
  207. [5] = "输家不开口,赢家不准走!",
  208. [6] = "我有事,先整一盘就走了,你们整开心哈",
  209. [7] = "美女,你胡撒子,我打给你哇",
  210. [8] = "帅哥,你胡撒子,我打给你哇",
  211. }
  212. xzddDefine.MJChatTxt = {
  213. [1] = {txt="哎呀,咋子比乌龟还慢嘛!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_1.ogg"},
  214. [2] = {txt="今天好霉,下手不要那么重嘛!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_2.ogg"},
  215. [3] = {txt="快点快点,不要打酱油咯!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_3.ogg"},
  216. [4] = {txt="你弹簧手是不是,快点出!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_4.ogg"},
  217. [5] = {txt="你是想哭都哭不出来!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_5.ogg"},
  218. [6] = {txt="你太牛了,必须点个赞!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_6.ogg"},
  219. [7] = {txt="菩萨菩萨,来个卡卡!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_7.ogg"},
  220. [8] = {txt="万水千山总是情,多输一点行不行!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_8.ogg"},
  221. [9] = {txt="我的妈呀,不要摸啊!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_9.ogg"},
  222. [10] = {txt="我的牌打的太好了!",oggStandard="mj_xzdd/res/sound/f_%s/f_xzdd_%s_text_10.ogg"},
  223. }
  224. xzddDefine.LuoBoPos = {
  225. [1] = {[1] = cc.p(getWinSize().width/2,getWinSize().height/2-40)},
  226. [2] = {[1] = cc.p(getWinSize().width/2-50,getWinSize().height/2),[2] = cc.p(getWinSize().width/2+50,getWinSize().height/2)},
  227. }
  228. --操作值映射到实际显示麻将组类型
  229. xzddDefine.MJOperateToGroupType={
  230. [xzddDefine.MJOperateType.OPREATE_CHI]=xzddDefine.MJGroupType.Chi,
  231. [xzddDefine.MJOperateType.OPREATE_PENG]=xzddDefine.MJGroupType.Peng,
  232. [xzddDefine.MJOperateType.OPREATE_ZHIGANG]=xzddDefine.MJGroupType.Gang,
  233. [xzddDefine.MJOperateType.OPREATE_BAGANG]=xzddDefine.MJGroupType.Gang,
  234. [xzddDefine.MJOperateType.OPREATE_GUOSHOUGANG]=xzddDefine.MJGroupType.Gang,
  235. [xzddDefine.MJOperateType.OPREATE_ANGANG]=xzddDefine.MJGroupType.AnGang,
  236. }
  237. xzddDefine.CHANGE_GAME_BG =
  238. {
  239. [3] = {
  240. ['2d'] = "mj_xzdd/res/zy_fangjian/xzdd_2d_bg.png",
  241. ['3d'] = "mj_xzdd/res/zy_fangjian/xzdd_3d_bg.jpg",
  242. },
  243. [2] = {
  244. ['2d'] = "mj_xzdd/res/zy_fangjian/xzdd_jingdian_2d.png",
  245. ['3d'] = "mj_xzdd/res/zy_fangjian/xzdd_jingdian_25d.jpg",
  246. },
  247. [1] = {
  248. ['2d'] = "mj_xzdd/res/zy_fangjian/xzdd_shishang_2d.png",
  249. ['3d'] = "mj_xzdd/res/zy_fangjian/xzdd_shishang_25d.jpg",
  250. },
  251. }
  252. --麻将标准手牌图片
  253. xzddDefine.MJStandImage={
  254. [xzddDefine.DesktopType.TwoD]={
  255. [xzddDefine.PlayerViewType.My]="handCards/mj_2d_handcard_%d.png",
  256. [xzddDefine.PlayerViewType.Left]="other/mj_2d_stand_left.png",
  257. [xzddDefine.PlayerViewType.Right]="other/mj_2d_stand_left.png",
  258. [xzddDefine.PlayerViewType.Top]="other/mj_2d_stand_top.png",
  259. },
  260. [xzddDefine.DesktopType.ThreeD]={
  261. [xzddDefine.PlayerViewType.My]="handCards/mj_handcard_%d.png",
  262. [xzddDefine.PlayerViewType.Left]="other/mj_stand_left.png",
  263. [xzddDefine.PlayerViewType.Right]="other/mj_stand_left.png",
  264. [xzddDefine.PlayerViewType.Top]="other/mj_stand_top.png",
  265. },
  266. [xzddDefine.DesktopType.TwoDGold]={
  267. [xzddDefine.PlayerViewType.My]="handCards/mj_2d_gold_handcard_%d.png",
  268. [xzddDefine.PlayerViewType.Left]="other/mj_2d_gold_stand_left.png",
  269. [xzddDefine.PlayerViewType.Right]="other/mj_2d_gold_stand_left.png",
  270. [xzddDefine.PlayerViewType.Top]="other/mj_2d_gold_stand_top.png",
  271. },
  272. [xzddDefine.DesktopType.TwoDL]={
  273. [xzddDefine.PlayerViewType.My]="handCards/mj_2d_lgold_handcard_%d.png",
  274. [xzddDefine.PlayerViewType.Left]="other/mj_2d_lgold_stand_left.png",
  275. [xzddDefine.PlayerViewType.Right]="other/mj_2d_lgold_stand_left.png",
  276. [xzddDefine.PlayerViewType.Top]="other/mj_2d_lgold_stand_top.png",
  277. },
  278. }
  279. --麻将出牌图片
  280. xzddDefine.MJOutImage={
  281. [xzddDefine.DesktopType.TwoD]={
  282. [xzddDefine.PlayerViewType.My]="outCards/my/mj_2d_outcard_my_%d.png",
  283. [xzddDefine.PlayerViewType.Left]="outCards/left/mj_2d_outcard_left_%d.png",
  284. [xzddDefine.PlayerViewType.Right]="outCards/right/mj_2d_outcard_right_%d.png",
  285. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_2d_outcard_top_%d.png",
  286. },
  287. [xzddDefine.DesktopType.ThreeD]={
  288. [xzddDefine.PlayerViewType.My]="outCards/my/mj_outcard_my_%d.png",
  289. [xzddDefine.PlayerViewType.Left]="outCards/left/mj_outcard_left_%d.png",
  290. [xzddDefine.PlayerViewType.Right]="outCards/right/mj_outcard_right_%d.png",
  291. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_outcard_top_%d.png",
  292. },
  293. [xzddDefine.DesktopType.TwoDGold]={
  294. [xzddDefine.PlayerViewType.My]="outCards/my/mj_2d_gold_outcard_my_%d.png",
  295. [xzddDefine.PlayerViewType.Left]="outCards/left/mj_2d_gold_outcard_left_%d.png",
  296. [xzddDefine.PlayerViewType.Right]="outCards/right/mj_2d_gold_outcard_right_%d.png",
  297. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_2d_gold_outcard_top_%d.png",
  298. },
  299. [xzddDefine.DesktopType.TwoDL]={
  300. [xzddDefine.PlayerViewType.My]="outCards/my/mj_2d_lgold_outcard_my_%d.png",
  301. [xzddDefine.PlayerViewType.Left]="outCards/left/mj_2d_lgold_outcard_left_%d.png",
  302. [xzddDefine.PlayerViewType.Right]="outCards/right/mj_2d_lgold_outcard_right_%d.png",
  303. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_2d_lgold_outcard_top_%d.png",
  304. },
  305. }
  306. --麻将操作图片
  307. xzddDefine.MJOperateGroupImage={
  308. [xzddDefine.DesktopType.TwoD]={
  309. [xzddDefine.PlayerViewType.My]="outCards/my/mj_2d_outcard_my_%d.png",
  310. [xzddDefine.PlayerViewType.Left]="outCards/left/mj_2d_outcard_left_%d.png",
  311. [xzddDefine.PlayerViewType.Right]="outCards/right/mj_2d_outcard_right_%d.png",
  312. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_2d_outcard_top_%d.png",
  313. },
  314. [xzddDefine.DesktopType.ThreeD]={
  315. [xzddDefine.PlayerViewType.My]="outCards/my/mj_outcard_my_%d.png",
  316. [xzddDefine.PlayerViewType.Left]="operateCards/left/mj_opcard_left_%d.png",
  317. [xzddDefine.PlayerViewType.Right]="operateCards/right/mj_opcard_right_%d.png",
  318. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_outcard_top_%d.png",
  319. },
  320. [xzddDefine.DesktopType.TwoDGold]={
  321. [xzddDefine.PlayerViewType.My]="outCards/my/mj_2d_gold_outcard_my_%d.png",
  322. [xzddDefine.PlayerViewType.Left]="outCards/left/mj_2d_gold_outcard_left_%d.png",
  323. [xzddDefine.PlayerViewType.Right]="outCards/right/mj_2d_gold_outcard_right_%d.png",
  324. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_2d_gold_outcard_top_%d.png",
  325. },
  326. [xzddDefine.DesktopType.TwoDL]={
  327. [xzddDefine.PlayerViewType.My]="outCards/my/mj_2d_lgold_outcard_my_%d.png",
  328. [xzddDefine.PlayerViewType.Left]="outCards/left/mj_2d_lgold_outcard_left_%d.png",
  329. [xzddDefine.PlayerViewType.Right]="outCards/right/mj_2d_lgold_outcard_right_%d.png",
  330. [xzddDefine.PlayerViewType.Top]="outCards/top/mj_2d_lgold_outcard_top_%d.png",
  331. },
  332. }
  333. --麻将背牌图片
  334. xzddDefine.MJOutBlackImage={
  335. [xzddDefine.DesktopType.TwoD]={
  336. [xzddDefine.PlayerViewType.My]="other/mj_2d_lie_down.png",
  337. [xzddDefine.PlayerViewType.Left]="other/mj_2d_lie_left.png",
  338. [xzddDefine.PlayerViewType.Right]="other/mj_2d_lie_left.png",
  339. [xzddDefine.PlayerViewType.Top]="other/mj_2d_lie_top.png",
  340. },
  341. [xzddDefine.DesktopType.ThreeD]={
  342. [xzddDefine.PlayerViewType.My]="other/mj_lie_down.png",
  343. [xzddDefine.PlayerViewType.Left]="other/mj_lie_left.png",
  344. [xzddDefine.PlayerViewType.Right]="other/mj_lie_right.png",
  345. [xzddDefine.PlayerViewType.Top]="other/mj_lie_top.png",
  346. },
  347. [xzddDefine.DesktopType.TwoDGold]={
  348. [xzddDefine.PlayerViewType.My]="other/mj_2d_gold_lie_down.png",
  349. [xzddDefine.PlayerViewType.Left]="other/mj_2d_gold_lie_left.png",
  350. [xzddDefine.PlayerViewType.Right]="other/mj_2d_gold_lie_left.png",
  351. [xzddDefine.PlayerViewType.Top]="other/mj_2d_gold_lie_top.png",
  352. },
  353. [xzddDefine.DesktopType.TwoDL]={
  354. [xzddDefine.PlayerViewType.My]="other/mj_2d_lgold_lie_down.png",
  355. [xzddDefine.PlayerViewType.Left]="other/mj_2d_lgold_lie_left.png",
  356. [xzddDefine.PlayerViewType.Right]="other/mj_2d_lgold_lie_left.png",
  357. [xzddDefine.PlayerViewType.Top]="other/mj_2d_lgold_lie_top.png",
  358. },
  359. }
  360. --麻将组内麻将的偏移量
  361. xzddDefine.MJGroupOffSet={
  362. [xzddDefine.DesktopType.TwoD]={
  363. [xzddDefine.PlayerViewType.My]={x=3,y=0},
  364. [xzddDefine.PlayerViewType.Left]={x=0,y=18},
  365. [xzddDefine.PlayerViewType.Right]={x=0,y=18},
  366. [xzddDefine.PlayerViewType.Top]={x=3,y=0},
  367. },
  368. [xzddDefine.DesktopType.ThreeD]={
  369. [xzddDefine.PlayerViewType.My]={x=3,y=0},
  370. [xzddDefine.PlayerViewType.Left]={x=7,y=18},
  371. [xzddDefine.PlayerViewType.Right]={x=7.5,y=18},
  372. [xzddDefine.PlayerViewType.Top]={x=3,y=0},
  373. },
  374. [xzddDefine.DesktopType.TwoDGold]={
  375. [xzddDefine.PlayerViewType.My]={x=2,y=0},
  376. [xzddDefine.PlayerViewType.Left]={x=0,y=14},
  377. [xzddDefine.PlayerViewType.Right]={x=0,y=14},
  378. [xzddDefine.PlayerViewType.Top]={x=2,y=0},
  379. },
  380. [xzddDefine.DesktopType.TwoDL]={
  381. [xzddDefine.PlayerViewType.My]={x=2,y=0},
  382. [xzddDefine.PlayerViewType.Left]={x=0,y=14},
  383. [xzddDefine.PlayerViewType.Right]={x=0,y=14},
  384. [xzddDefine.PlayerViewType.Top]={x=2,y=0},
  385. },
  386. }
  387. --麻将组的起始偏移量
  388. xzddDefine.MJGroupStartOffSet={
  389. [xzddDefine.DesktopType.TwoD]={
  390. [xzddDefine.PlayerViewType.My]={x=25,y=-25},
  391. [xzddDefine.PlayerViewType.Left]={x=0,y=0},
  392. [xzddDefine.PlayerViewType.Right]={x=0,y=-40},
  393. [xzddDefine.PlayerViewType.Top]={x=-30,y=0},
  394. },
  395. [xzddDefine.DesktopType.ThreeD]={
  396. [xzddDefine.PlayerViewType.My]={x=25,y=-25},
  397. [xzddDefine.PlayerViewType.Left]={x=-8,y=-55},
  398. [xzddDefine.PlayerViewType.Right]={x=-12,y=23},
  399. [xzddDefine.PlayerViewType.Top]={x=-30,y=0},
  400. },
  401. [xzddDefine.DesktopType.TwoDGold]={
  402. [xzddDefine.PlayerViewType.My]={x=25,y=-25},
  403. [xzddDefine.PlayerViewType.Left]={x=0,y=0},
  404. [xzddDefine.PlayerViewType.Right]={x=0,y=-40},
  405. [xzddDefine.PlayerViewType.Top]={x=-30,y=0},
  406. },
  407. [xzddDefine.DesktopType.TwoDL]={
  408. [xzddDefine.PlayerViewType.My]={x=25,y=-25},
  409. [xzddDefine.PlayerViewType.Left]={x=0,y=0},
  410. [xzddDefine.PlayerViewType.Right]={x=0,y=-40},
  411. [xzddDefine.PlayerViewType.Top]={x=-30,y=0},
  412. },
  413. }
  414. --麻将组偏移量
  415. xzddDefine.MJGroupMarginOffSet={
  416. [xzddDefine.DesktopType.TwoD]={
  417. [xzddDefine.PlayerViewType.My]={x=5,y=0},
  418. [xzddDefine.PlayerViewType.Left]={x=0,y=3},
  419. [xzddDefine.PlayerViewType.Right]={x=0,y=3},
  420. [xzddDefine.PlayerViewType.Top]={x=2,y=0},
  421. },
  422. [xzddDefine.DesktopType.ThreeD]={
  423. [xzddDefine.PlayerViewType.My]={x=25,y=0},
  424. [xzddDefine.PlayerViewType.Left]={x=28,y=0},
  425. [xzddDefine.PlayerViewType.Right]={x=28,y=0},
  426. [xzddDefine.PlayerViewType.Top]={x=2,y=0},
  427. },
  428. [xzddDefine.DesktopType.TwoDGold]={
  429. [xzddDefine.PlayerViewType.My]={x=5,y=0},
  430. [xzddDefine.PlayerViewType.Left]={x=0,y=3},
  431. [xzddDefine.PlayerViewType.Right]={x=0,y=3},
  432. [xzddDefine.PlayerViewType.Top]={x=2,y=0},
  433. },
  434. [xzddDefine.DesktopType.TwoDL]={
  435. [xzddDefine.PlayerViewType.My]={x=5,y=0},
  436. [xzddDefine.PlayerViewType.Left]={x=0,y=3},
  437. [xzddDefine.PlayerViewType.Right]={x=0,y=3},
  438. [xzddDefine.PlayerViewType.Top]={x=2,y=0},
  439. },
  440. }
  441. --麻将组与麻将的间隔
  442. xzddDefine.MJGroupWithMJMargin={
  443. [xzddDefine.DesktopType.TwoD]={
  444. [xzddDefine.PlayerViewType.My]={x=0,y=0},
  445. [xzddDefine.PlayerViewType.Left]={x=-12,y=40},
  446. [xzddDefine.PlayerViewType.Right]={x=12,y=43},
  447. [xzddDefine.PlayerViewType.Top]={x=0,y=0},
  448. },
  449. [xzddDefine.DesktopType.ThreeD]={
  450. [xzddDefine.PlayerViewType.My]={x=0,y=0},
  451. [xzddDefine.PlayerViewType.Left]={x=-6,y=30},
  452. [xzddDefine.PlayerViewType.Right]={x=-12,y=33},
  453. [xzddDefine.PlayerViewType.Top]={x=0,y=0},
  454. },
  455. [xzddDefine.DesktopType.TwoDGold]={
  456. [xzddDefine.PlayerViewType.My]={x=0,y=0},
  457. [xzddDefine.PlayerViewType.Left]={x=0,y=40},
  458. [xzddDefine.PlayerViewType.Right]={x=0,y=43},
  459. [xzddDefine.PlayerViewType.Top]={x=0,y=0},
  460. },
  461. [xzddDefine.DesktopType.TwoDL]={
  462. [xzddDefine.PlayerViewType.My]={x=0,y=0},
  463. [xzddDefine.PlayerViewType.Left]={x=0,y=40},
  464. [xzddDefine.PlayerViewType.Right]={x=0,y=43},
  465. [xzddDefine.PlayerViewType.Top]={x=0,y=0},
  466. },
  467. }
  468. --麻将出牌换行个数
  469. xzddDefine.MJChangeLinCount={
  470. [xzddDefine.DesktopType.TwoD]={
  471. [2]={
  472. [xzddDefine.PlayerViewType.My]=20,
  473. [xzddDefine.PlayerViewType.Left]=10,
  474. [xzddDefine.PlayerViewType.Right]=10,
  475. [xzddDefine.PlayerViewType.Top]=22,
  476. },
  477. [3]={
  478. [xzddDefine.PlayerViewType.My]=10,
  479. [xzddDefine.PlayerViewType.Left]=10,
  480. [xzddDefine.PlayerViewType.Right]=10,
  481. [xzddDefine.PlayerViewType.Top]=12,
  482. },
  483. [4]={
  484. [xzddDefine.PlayerViewType.My]=10,
  485. [xzddDefine.PlayerViewType.Left]=10,
  486. [xzddDefine.PlayerViewType.Right]=10,
  487. [xzddDefine.PlayerViewType.Top]=12,
  488. },
  489. },
  490. [xzddDefine.DesktopType.ThreeD]={
  491. [2]={
  492. [xzddDefine.PlayerViewType.My]=18,
  493. [xzddDefine.PlayerViewType.Left]=9,
  494. [xzddDefine.PlayerViewType.Right]=9,
  495. [xzddDefine.PlayerViewType.Top]=20,
  496. },
  497. [3]={
  498. [xzddDefine.PlayerViewType.My]=9,
  499. [xzddDefine.PlayerViewType.Left]=9,
  500. [xzddDefine.PlayerViewType.Right]=9,
  501. [xzddDefine.PlayerViewType.Top]=10,
  502. },
  503. [4]={
  504. [xzddDefine.PlayerViewType.My]=9,
  505. [xzddDefine.PlayerViewType.Left]=9,
  506. [xzddDefine.PlayerViewType.Right]=9,
  507. [xzddDefine.PlayerViewType.Top]=10,
  508. },
  509. },
  510. [xzddDefine.DesktopType.TwoDGold]={
  511. [2]={
  512. [xzddDefine.PlayerViewType.My]=22,
  513. [xzddDefine.PlayerViewType.Left]=10,
  514. [xzddDefine.PlayerViewType.Right]=10,
  515. [xzddDefine.PlayerViewType.Top]=22,
  516. },
  517. [3]={
  518. [xzddDefine.PlayerViewType.My]=12,
  519. [xzddDefine.PlayerViewType.Left]=10,
  520. [xzddDefine.PlayerViewType.Right]=10,
  521. [xzddDefine.PlayerViewType.Top]=12,
  522. },
  523. [4]={
  524. [xzddDefine.PlayerViewType.My]=12,
  525. [xzddDefine.PlayerViewType.Left]=10,
  526. [xzddDefine.PlayerViewType.Right]=10,
  527. [xzddDefine.PlayerViewType.Top]=12,
  528. },
  529. },
  530. [xzddDefine.DesktopType.TwoDL]={
  531. [2]={
  532. [xzddDefine.PlayerViewType.My]=20,
  533. [xzddDefine.PlayerViewType.Left]=10,
  534. [xzddDefine.PlayerViewType.Right]=10,
  535. [xzddDefine.PlayerViewType.Top]=22,
  536. },
  537. [3]={
  538. [xzddDefine.PlayerViewType.My]=11,
  539. [xzddDefine.PlayerViewType.Left]=10,
  540. [xzddDefine.PlayerViewType.Right]=10,
  541. [xzddDefine.PlayerViewType.Top]=12,
  542. },
  543. [4]={
  544. [xzddDefine.PlayerViewType.My]=11,
  545. [xzddDefine.PlayerViewType.Left]=10,
  546. [xzddDefine.PlayerViewType.Right]=10,
  547. [xzddDefine.PlayerViewType.Top]=12,
  548. },
  549. },
  550. }
  551. --出牌麻将的换行的偏移量
  552. xzddDefine.MJOutChangeOffSet={
  553. [xzddDefine.DesktopType.TwoD]={
  554. [xzddDefine.PlayerViewType.My]={x=4.5,y=20},
  555. [xzddDefine.PlayerViewType.Left]={x=5,y=18},
  556. [xzddDefine.PlayerViewType.Right]={x=5,y=18},
  557. [xzddDefine.PlayerViewType.Top]={x=3,y=16},
  558. },
  559. [xzddDefine.DesktopType.ThreeD]={
  560. [xzddDefine.PlayerViewType.My]={x=4.5,y=20},
  561. [xzddDefine.PlayerViewType.Left]={x=8,y=18},
  562. [xzddDefine.PlayerViewType.Right]={x=8,y=18},
  563. [xzddDefine.PlayerViewType.Top]={x=3,y=18},
  564. },
  565. [xzddDefine.DesktopType.TwoDGold]={
  566. [xzddDefine.PlayerViewType.My]={x=2,y=13},
  567. [xzddDefine.PlayerViewType.Left]={x=2,y=13},
  568. [xzddDefine.PlayerViewType.Right]={x=2,y=13},
  569. [xzddDefine.PlayerViewType.Top]={x=2,y=13},
  570. },
  571. [xzddDefine.DesktopType.TwoDL]={
  572. [xzddDefine.PlayerViewType.My]={x=2,y=13},
  573. [xzddDefine.PlayerViewType.Left]={x=2,y=13},
  574. [xzddDefine.PlayerViewType.Right]={x=2,y=13},
  575. [xzddDefine.PlayerViewType.Top]={x=2,y=13},
  576. },
  577. }
  578. xzddDefine.MJOutOffSet={
  579. [xzddDefine.DesktopType.TwoD]={
  580. [xzddDefine.PlayerViewType.My]={x=3,y=20},
  581. [xzddDefine.PlayerViewType.Left]={x=0,y=15},
  582. [xzddDefine.PlayerViewType.Right]={x=0,y=15},
  583. [xzddDefine.PlayerViewType.Top]={x=3,y=16},
  584. },
  585. [xzddDefine.DesktopType.ThreeD]={
  586. [xzddDefine.PlayerViewType.My]={x=3,y=20},
  587. [xzddDefine.PlayerViewType.Left]={x=3,y=15},
  588. [xzddDefine.PlayerViewType.Right]={x=3,y=15},
  589. [xzddDefine.PlayerViewType.Top]={x=3,y=16},
  590. },
  591. [xzddDefine.DesktopType.TwoDGold]={
  592. [xzddDefine.PlayerViewType.My]={x=3,y=20},
  593. [xzddDefine.PlayerViewType.Left]={x=0,y=15},
  594. [xzddDefine.PlayerViewType.Right]={x=0,y=15},
  595. [xzddDefine.PlayerViewType.Top]={x=3,y=16},
  596. },
  597. [xzddDefine.DesktopType.TwoDL]={
  598. [xzddDefine.PlayerViewType.My]={x=3,y=20},
  599. [xzddDefine.PlayerViewType.Left]={x=0,y=15},
  600. [xzddDefine.PlayerViewType.Right]={x=0,y=15},
  601. [xzddDefine.PlayerViewType.Top]={x=3,y=16},
  602. },
  603. }
  604. --杠牌最上面牌的偏移
  605. xzddDefine.MJOperateGangOffset={
  606. [xzddDefine.DesktopType.TwoD]={x=0,y=12},
  607. [xzddDefine.DesktopType.ThreeD]={x=5,y=15},
  608. [xzddDefine.DesktopType.TwoDGold]={x=0,y=12},
  609. [xzddDefine.DesktopType.TwoDL]={x=0,y=12},
  610. }
  611. --麻将人数位置配置
  612. xzddDefine.MJRoomPlayerSitConfig={
  613. [4]={xzddDefine.PlayerViewType.My,xzddDefine.PlayerViewType.Right,xzddDefine.PlayerViewType.Top,xzddDefine.PlayerViewType.Left},
  614. [3]={xzddDefine.PlayerViewType.My,xzddDefine.PlayerViewType.Right,xzddDefine.PlayerViewType.Left},
  615. [2]={xzddDefine.PlayerViewType.My,xzddDefine.PlayerViewType.Top},
  616. }
  617. --
  618. --麻将最后一个手牌位置偏移
  619. xzddDefine.MJLastHandCardOffset={
  620. [xzddDefine.DesktopType.TwoD]={
  621. [xzddDefine.PlayerViewType.My]={x=20,y=0},
  622. [xzddDefine.PlayerViewType.Left]={x=0,y=-20},
  623. [xzddDefine.PlayerViewType.Right]={x=0,y=20},
  624. [xzddDefine.PlayerViewType.Top]={x=-20,y=0},
  625. },
  626. [xzddDefine.DesktopType.ThreeD]={
  627. [xzddDefine.PlayerViewType.My]={x=20,y=0},
  628. [xzddDefine.PlayerViewType.Left]={x=-3,y=-20},
  629. [xzddDefine.PlayerViewType.Right]={x=-2,y=20},
  630. [xzddDefine.PlayerViewType.Top]={x=-20,y=0},
  631. },
  632. [xzddDefine.DesktopType.TwoDGold]={
  633. [xzddDefine.PlayerViewType.My]={x=20,y=0},
  634. [xzddDefine.PlayerViewType.Left]={x=0,y=-20},
  635. [xzddDefine.PlayerViewType.Right]={x=0,y=20},
  636. [xzddDefine.PlayerViewType.Top]={x=-20,y=0},
  637. },
  638. [xzddDefine.DesktopType.TwoDL]={
  639. [xzddDefine.PlayerViewType.My]={x=20,y=0},
  640. [xzddDefine.PlayerViewType.Left]={x=0,y=-20},
  641. [xzddDefine.PlayerViewType.Right]={x=0,y=20},
  642. [xzddDefine.PlayerViewType.Top]={x=-20,y=0},
  643. },
  644. }
  645. --左边麻将的高度
  646. -- xzddDefine.MJ_HAND_CARD_LEFT_PADDING_HEIGHT=30
  647. xzddDefine.MJ_HAND_CARD_LEFT_PADDING_HEIGHT={
  648. [xzddDefine.DesktopType.TwoD]=30,
  649. [xzddDefine.DesktopType.ThreeD]=30,
  650. [xzddDefine.DesktopType.TwoDGold]=28,
  651. [xzddDefine.DesktopType.TwoDL]=32,
  652. }
  653. --左边麻将的X轴偏移修正
  654. xzddDefine.MJ_HAND_CARD_LEFT_OFFSET_X=7
  655. xzddDefine.MJHandCardLeftOffsetX={
  656. [xzddDefine.DesktopType.TwoD]=0,
  657. [xzddDefine.DesktopType.ThreeD]=7,
  658. [xzddDefine.DesktopType.TwoDGold]=0,
  659. [xzddDefine.DesktopType.TwoDL]=0,
  660. }
  661. --右边麻将的X轴偏移修正
  662. xzddDefine.MJ_HAND_CARD_RIGHT_OFFSET_X=7.5
  663. xzddDefine.MJHandCardRightOffsetX={
  664. [xzddDefine.DesktopType.TwoD]=0,
  665. [xzddDefine.DesktopType.ThreeD]=7.5,
  666. [xzddDefine.DesktopType.TwoDGold]=0,
  667. [xzddDefine.DesktopType.TwoDL]=0,
  668. }
  669. local designSize = cc.size(1280,720)
  670. xzddDefine.HandCardStartPosOfCardNum = {
  671. [7] = {
  672. [1] = {x = (designSize.width - 160) * g_radio_x, y = 250 * g_radio_y},
  673. [2] = {x = (designSize.width / 2 + 290) * g_radio_x - 150, y = (designSize.height - 45)*g_radio_y},
  674. [3] = {x = 160 * g_radio_x, y = (designSize.height - 150)*g_radio_y},
  675. [4] = {x = 350+(designSize.width*g_radio_x-designSize.width)/2, y = 60},
  676. },
  677. [10] = {
  678. [1] = {x = (designSize.width - 160)*g_radio_x, y = (170-10)*g_radio_y},
  679. [2] = {x = (designSize.width / 2 + 290)*g_radio_x - 130, y = (designSize.height - 45)*g_radio_y},
  680. [3] = {x = 160*g_radio_x, y = (designSize.height - 90)*g_radio_y},
  681. [4] = {x = 200+(designSize.width*g_radio_x-designSize.width)/2, y = 60},
  682. },
  683. [13] = {
  684. [1] = {x = (designSize.width - 160)*g_radio_x, y = (170-10)*g_radio_y},
  685. [2] = {x = (designSize.width / 2 + 290)*g_radio_x, y = (designSize.height - 45)*g_radio_y},
  686. [3] = {x = 160*g_radio_x, y = (designSize.height - 90)*g_radio_y},
  687. [4] = {x = 70+(designSize.width*g_radio_x-designSize.width)/2, y = 60},
  688. },
  689. }
  690. function loadMJConfig(desktopType)
  691. local AllMJConfigs = {
  692. [xzddDefine.DesktopType.ThreeD] = "mj_xzdd.luaScript.Views.3d.MJConfig_3d",
  693. [xzddDefine.DesktopType.TwoD] = "mj_xzdd.luaScript.Views.2d.MJConfig_2d",
  694. [xzddDefine.DesktopType.TwoDL] = "mj_xzdd.luaScript.Views.2d.MJConfig_2d",
  695. [xzddDefine.DesktopType.TwoDGold] = "mj_xzdd.luaScript.Views.2d.MJConfig_2d_gold",
  696. }
  697. -- 修复2d金黄切墨绿时,部分配置没有重写成功的bug
  698. package.loaded['mj.luaScript.Common.2d.CommonMahjongConfig'] = nil
  699. desktopType = desktopType or app.systemSetting.info.viewType
  700. if not desktopType then
  701. desktopType = xzddDefine.DesktopType.TwoD
  702. end
  703. xzddDefine.MJConfig_3d = require(AllMJConfigs[xzddDefine.DesktopType.ThreeD])
  704. if desktopType ~= xzddDefine.DesktopType.ThreeD then
  705. xzddDefine.MJConfig_2d = require(AllMJConfigs[desktopType])
  706. else
  707. xzddDefine.MJConfig_2d = require(AllMJConfigs[xzddDefine.DesktopType.TwoD])
  708. end
  709. end
  710. xzddDefine.loadMJConfig = loadMJConfig
  711. loadMJConfig()
  712. return xzddDefine