選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

736 行
30 KiB

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