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.

349 lines
11 KiB

  1. local MJDefine=MJFramework.MJImport("mj.luaScript.MJDefine")
  2. local MJ=MJFramework.MJImport("mj.luaScript.Views.Game.MJ")
  3. local ncmajAnimationCompnent = MJFramework.MJFrameworkClassImprot("mj.luaScript.Views.Compnent.MJAnimationCompnent")
  4. function ncmajAnimationCompnent.CreateOperareEffect(opType,callback)
  5. if ncmajAnimationCompnent.effect[opType] then
  6. local sprite=cc.Sprite:create(ncmajAnimationCompnent.effect[opType])
  7. sprite:setOpacity(150)
  8. sprite:setScale(0.5)
  9. -- sprite:addChild(bg,-1)
  10. -- local size= sprite:getContentSize()
  11. -- bg:setPosition(cc.p(size.width/2,size.height/2))
  12. local action={
  13. cc.Spawn:create(cc.EaseBackOut:create(cc.ScaleTo:create(0.2,1)),cc.FadeTo:create(0.2,255)),
  14. cc.DelayTime:create(0.1),
  15. cc.Spawn:create(cc.EaseBackIn:create(cc.ScaleTo:create(0.2,0)),cc.FadeTo:create(0.2,100)),
  16. cc.CallFunc:create(function()
  17. if callback then
  18. callback()
  19. end
  20. end),
  21. cc.RemoveSelf:create(),
  22. }
  23. sprite:runAction(cc.Sequence:create(action))
  24. return sprite
  25. end
  26. end
  27. function ncmajAnimationCompnent.CreateHuEffect(huType,callback)
  28. local sprite
  29. if huType == MJDefine.MJGameHuType.HU_ZIMO then
  30. sprite=cc.Sprite:create(ncmajAnimationCompnent.effect[MJDefine.MJOperateType.OPREATE_ZIMOHU])
  31. elseif huType == MJDefine.MJGameHuType.HU_QIANGGANG then
  32. sprite=cc.Sprite:create(ncmajAnimationCompnent.effect[MJDefine.MJOperateType.OPREATE_QIANG_GANG_HU])
  33. else
  34. sprite=cc.Sprite:create(ncmajAnimationCompnent.effect[MJDefine.MJOperateType.OPREATE_DIANPAOHU])
  35. end
  36. -- local bg = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_text_bg.png")
  37. -- sprite:addChild(bg,-1)
  38. -- local size= sprite:getContentSize()
  39. -- bg:setPosition(cc.p(size.width/2,size.height/2))
  40. sprite:setOpacity(150)
  41. sprite:setScale(0.5)
  42. local action={
  43. cc.Spawn:create(cc.EaseBackOut:create(cc.ScaleTo:create(0.2,1)),cc.FadeTo:create(0.2,255)),
  44. cc.DelayTime:create(0.2),
  45. cc.Spawn:create(cc.EaseBackIn:create(cc.ScaleTo:create(0.2,0)),cc.FadeTo:create(0.2,100)),
  46. cc.RemoveSelf:create(),
  47. cc.CallFunc:create(function()
  48. if callback then
  49. callback()
  50. end
  51. end),
  52. }
  53. sprite:runAction(cc.Sequence:create(action))
  54. return sprite
  55. end
  56. -- 胡动画
  57. function ncmajAnimationCompnent.CreateHuOrderEffect(huType,order,callback)
  58. local orderNum = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_num"..order..".png")
  59. local sprite = nil
  60. if huType == MJDefine.MJGameHuType.HU_ZIMO then
  61. sprite=cc.Sprite:create(ncmajAnimationCompnent.effect[MJDefine.MJOperateType.OPREATE_ZIMOHU])
  62. orderNum:setPosition(cc.p(260,65))
  63. else
  64. sprite=cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_hu.png")--mj_effect_jiepao
  65. orderNum:setPosition(cc.p(300,65))
  66. end
  67. --sprite:addChild(orderNum)
  68. local bg = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_text_bg.png")
  69. sprite:addChild(bg,-1)
  70. local size= sprite:getContentSize()
  71. bg:setPosition(cc.p(size.width/2,size.height/2))
  72. sprite:setScale(0.5)
  73. local action={
  74. cc.DelayTime:create(0.2),
  75. cc.CallFunc:create(function()
  76. if callback then
  77. callback()
  78. end
  79. end),
  80. }
  81. sprite:runAction(cc.Sequence:create(action))
  82. return sprite
  83. end
  84. -- 放炮动画
  85. function ncmajAnimationCompnent.CreateFangPaoEffect(callback)
  86. local sprite=cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_fangpao.png")--mj_effect_jiepao
  87. local bg = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_text_bg.png")
  88. sprite:addChild(bg,-1)
  89. local size= sprite:getContentSize()
  90. bg:setPosition(cc.p(size.width/2,size.height/2))
  91. sprite:setScale(0.5)
  92. local action={
  93. cc.DelayTime:create(0.2),
  94. cc.CallFunc:create(function()
  95. if callback then
  96. callback()
  97. end
  98. end),
  99. }
  100. sprite:runAction(cc.Sequence:create(action))
  101. return sprite
  102. end
  103. -- 爆牌
  104. function ncmajAnimationCompnent.CreateBaoEffect(callback)
  105. local sprite = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_baojiao.png")
  106. -- sprite:loadTexture("luzhou_effect_img_bao.png", 1)
  107. sprite:setOpacity(150)
  108. sprite:setScale(0.5)
  109. local bg = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_text_bg.png")
  110. sprite:addChild(bg,-1)
  111. local size= sprite:getContentSize()
  112. bg:setPosition(cc.p(size.width/2,size.height/2))
  113. local action = {
  114. cc.Spawn:create(cc.EaseBackOut:create(cc.ScaleTo:create(0.2,1)),cc.FadeTo:create(0.2,255)),
  115. cc.DelayTime:create(0.2),
  116. cc.Spawn:create(cc.EaseBackIn:create(cc.ScaleTo:create(0.2,0)),cc.FadeTo:create(0.2,100)),
  117. cc.CallFunc:create(function()
  118. if callback then
  119. callback()
  120. end
  121. end),
  122. cc.RemoveSelf:create(),
  123. }
  124. sprite:runAction(cc.Sequence:create(action))
  125. return sprite
  126. end
  127. -- 放炮
  128. function ncmajAnimationCompnent.CreateDianPaoEffect(callback)
  129. local sprite = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_fangpao.png")
  130. -- sprite:loadTexture("luzhou_effect_img_bao.png", 1)
  131. sprite:setOpacity(150)
  132. sprite:setScale(0.5)
  133. local action = {
  134. cc.Spawn:create(cc.EaseBackOut:create(cc.ScaleTo:create(0.2,1)),cc.FadeTo:create(0.2,255)),
  135. cc.DelayTime:create(0.2),
  136. cc.Spawn:create(cc.EaseBackIn:create(cc.ScaleTo:create(0.2,0)),cc.FadeTo:create(0.2,100)),
  137. cc.CallFunc:create(function()
  138. if callback then
  139. callback()
  140. end
  141. end),
  142. cc.RemoveSelf:create(),
  143. }
  144. sprite:runAction(cc.Sequence:create(action))
  145. return sprite
  146. end
  147. function ncmajAnimationCompnent.CreateStartSendCards(handViews,callback)
  148. local index=0
  149. local t=0.05
  150. local height=60
  151. local PCount = table.nums(handViews)
  152. for k,v in pairs(handViews) do
  153. for _,mj in pairs(v.handCards) do
  154. mj:setOpacity(0)--setVisible(false)
  155. end
  156. local startIndex=1
  157. local function nextAction()
  158. for i=startIndex,startIndex+3 do
  159. if v.handCards[i] then
  160. -- v.handCards[i]:setVisible(true)
  161. v.handCards[i]:setPositionY(v.handCards[i]:getPositionY()+height)
  162. v.handCards[i]:runAction(cc.EaseIn:create(cc.MoveBy:create(t,cc.p(0,-height)),t))
  163. v.handCards[i]:runAction(cc.FadeTo:create(t, 255))
  164. -- v.handCards[i]:runAction(cc.Sequence:create(cc.MoveBy:create(0.3,cc.p(0,-50)),cc.CallFunc(function()
  165. -- v.handCards[i]:setVisible(true)
  166. -- end)))
  167. end
  168. --[[if i==#v.handCards then
  169. v:stopAllActions()
  170. end--]]
  171. end
  172. startIndex=startIndex+4
  173. end
  174. local actions={
  175. cc.DelayTime:create(t*index),
  176. cc.CallFunc:create(nextAction),
  177. cc.DelayTime:create(t*PCount),
  178. cc.CallFunc:create(nextAction),
  179. cc.DelayTime:create(t*PCount),
  180. cc.CallFunc:create(nextAction),
  181. cc.DelayTime:create(t*PCount),
  182. cc.CallFunc:create(nextAction),
  183. }
  184. if index==table.nums(handViews)-1 then
  185. table.insert(actions,cc.DelayTime:create(0.3))
  186. table.insert(actions,cc.CallFunc:create(function()
  187. if callback then callback() end
  188. end))
  189. end
  190. v:runAction(cc.Sequence:create(actions))
  191. index=index+1
  192. end
  193. end
  194. -- 博自摸
  195. function ncmajAnimationCompnent.CreateBoZiMoEffect(callback)
  196. local sprite = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_bozimo.png")
  197. sprite:setOpacity(150)
  198. sprite:setScale(0.5)
  199. local bg = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_text_bg.png")
  200. sprite:addChild(bg,-1)
  201. local size= sprite:getContentSize()
  202. bg:setPosition(cc.p(size.width/2,size.height/2))
  203. local action = {
  204. cc.Spawn:create(cc.EaseBackOut:create(cc.ScaleTo:create(0.2,1)),cc.FadeTo:create(0.2,255)),
  205. cc.DelayTime:create(0.1),
  206. cc.Spawn:create(cc.EaseBackIn:create(cc.ScaleTo:create(0.2,0)),cc.FadeTo:create(0.2,100)),
  207. cc.CallFunc:create(function()
  208. if callback then
  209. callback()
  210. end
  211. end),
  212. cc.RemoveSelf:create(),
  213. }
  214. sprite:runAction(cc.Sequence:create(action))
  215. return sprite
  216. end
  217. -- 飘
  218. function ncmajAnimationCompnent.CreatePiaoEffect(callback, isRemoveSelf)
  219. isRemoveSelf = false
  220. local sprite = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_piao.png")
  221. sprite:setOpacity(150)
  222. sprite:setScale(isRemoveSelf and 0.5 or 0.3)
  223. local action={
  224. cc.Spawn:create(cc.EaseBackOut:create(cc.ScaleTo:create(0.3,isRemoveSelf and 1.0 or 0.5)),cc.FadeTo:create(0.3,255)),
  225. cc.DelayTime:create(0.1),
  226. cc.Spawn:create(cc.EaseBackIn:create(cc.ScaleTo:create(0.2, isRemoveSelf and 0 or 0.5)),cc.FadeTo:create(0.2, isRemoveSelf and 100 or 255)),
  227. cc.CallFunc:create(function()
  228. if callback then
  229. callback()
  230. end
  231. end),
  232. isRemoveSelf and cc.RemoveSelf:create()
  233. }
  234. sprite:runAction(cc.Sequence:create(action))
  235. return sprite
  236. end
  237. --刮风光效
  238. function ncmajAnimationCompnent.createGuaFengEffect()
  239. -- 加载第一张图片
  240. local nodeImage = cc.ImageView:createNode()
  241. nodeImage:loadTexture(string.format("guafeng_%d",0))
  242. -- 循环修改图片
  243. local everyFrame = 0.035
  244. local indexFace = 0
  245. local indexMax = 18
  246. local action1 = cc.Sequence:create(cc.DelayTime:create(everyFrame),cc.CallFunc:create(function ()
  247. indexFace = indexFace + 1
  248. if 0 < indexFace and indexFace < indexMax then
  249. else
  250. nodeImage:removeFromParent()
  251. return
  252. end
  253. local name = string.format("guafeng_%d.png",indexFace)
  254. if not tolua.isnull(nodeImage) then
  255. nodeImage:loadTexture(name, cc.TextureResType.plistType)
  256. end
  257. end))
  258. local action2 = cc.Repeat:create(action1, indexMax+1)
  259. --nodeImage:stopAllActions()
  260. --nodeImage:runAction(cc.RepeatForever:create(action2));
  261. nodeImage:runAction(action2)
  262. nodeImage:setVisible(true)
  263. return nodeImage
  264. end
  265. --下雨光效
  266. function ncmajAnimationCompnent.createXiaYuEffect()
  267. -- 加载第一张图片
  268. local nodeImage = cc.ImageView:createNode()
  269. nodeImage:loadTexture(string.format("xiayu-animation_%d",0))
  270. -- 循环修改图片
  271. local everyFrame = 0.035
  272. local indexFace = 0
  273. local indexMax = 16
  274. local action1 = cc.Sequence:create(cc.DelayTime:create(everyFrame),cc.CallFunc:create(function ()
  275. indexFace = indexFace + 1
  276. if 0 < indexFace and indexFace < indexMax then
  277. else
  278. nodeImage:removeFromParent()
  279. return
  280. end
  281. local name = string.format("xiayu-animation_%d.png",indexFace)
  282. if not tolua.isnull(nodeImage) then
  283. nodeImage:loadTexture(name, cc.TextureResType.plistType)
  284. end
  285. end))
  286. local action2 = cc.Repeat:create(action1, indexMax+1)
  287. --nodeImage:stopAllActions()
  288. --nodeImage:runAction(cc.RepeatForever:create(action2));
  289. nodeImage:runAction(action2)
  290. nodeImage:setVisible(true)
  291. return nodeImage
  292. end
  293. -- 躺牌
  294. function ncmajAnimationCompnent.CreateTangEffect(callback)
  295. local sprite = cc.Sprite:create("mj_ncmaj/res/zy_fangjian/ncmajadd/mj_effect_tang.png")
  296. -- sprite:loadTexture("luzhou_effect_img_bao.png", 1)
  297. sprite:setOpacity(150)
  298. sprite:setScale(0.5)
  299. local bg = cc.Sprite:create("mj/res/ui/zy_fangjian/operate/mj_effect_text_bg.png")
  300. sprite:addChild(bg,-1)
  301. local size= sprite:getContentSize()
  302. bg:setPosition(cc.p(size.width/2,size.height/2))
  303. local action = {
  304. cc.Spawn:create(cc.EaseBackOut:create(cc.ScaleTo:create(0.2,1)),cc.FadeTo:create(0.2,255)),
  305. cc.DelayTime:create(0.2),
  306. cc.Spawn:create(cc.EaseBackIn:create(cc.ScaleTo:create(0.2,0)),cc.FadeTo:create(0.2,100)),
  307. cc.CallFunc:create(function()
  308. if callback then
  309. callback()
  310. end
  311. end),
  312. cc.RemoveSelf:create(),
  313. }
  314. sprite:runAction(cc.Sequence:create(action))
  315. return sprite
  316. end
  317. return ncmajAnimationCompnent