InviteItem.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import MoveUpAndDown from "../../component/tween/MoveUpAndDown";
  2. const { ccclass, property } = cc._decorator;
  3. @ccclass
  4. export default class InviteItem extends cc.Component{
  5. @property({displayName: '红包图标', type: cc.Node})
  6. private node_redBag: cc.Node = null;
  7. @property({displayName: '头像', type: cc.Sprite})
  8. private sp_headPhoto: cc.Sprite = null;
  9. @property({displayName: 'x轴方向的偏移'})
  10. private offset_x: number = 0;
  11. @property({displayName: '克隆对象', type: cc.Node})
  12. private node_clone: cc.Node = null;
  13. private targetNode: cc.Node = null;
  14. private moveUpAndDownComp: MoveUpAndDown = null;
  15. start(){
  16. this.moveUpAndDownComp = this.node_redBag.getComponent(MoveUpAndDown);
  17. }
  18. public setItemData(data, endNode: cc.Node)
  19. {
  20. this.targetNode = endNode;
  21. }
  22. public clickHeadPhotoBtn()
  23. {
  24. mk.audio.playEffect("button");
  25. mk.fly.playFlyAni(this.node_redBag, this.node_clone ,this.targetNode, 0.6, ()=>{
  26. if(this.targetNode)
  27. {
  28. let lab = cc.instantiate(this.targetNode);
  29. let pos = lab.getPosition();
  30. pos.y += 50;
  31. lab.setPosition(pos);
  32. lab.setParent(this.targetNode.parent);
  33. lab.active = true;
  34. pos.y += 25;
  35. cc.tween(lab).to(1.4, {opacity: 0, position: cc.v3(pos)}, cc.easeSineOut()).call(()=>{
  36. if(lab)
  37. {
  38. lab.destroy();
  39. }
  40. }).start();
  41. }
  42. }, cc.v3(this.offset_x, 0, 0));
  43. }
  44. }