Coach.ts 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import Armature from "./Armature";
  2. import Role from "./Role";
  3. const {ccclass, property} = cc._decorator;
  4. /**教练类 */
  5. @ccclass
  6. export default class Coach extends Role {
  7. public property_damage:number = 5;
  8. public property_enduranceResumeSpeed:number = 5;
  9. public property_hp = 10000;
  10. public property_maxHp = 10000;
  11. public onLoad():void{
  12. //初始化骨骼
  13. this.armature =new Armature('armature/monster',this.node);
  14. //初始动画
  15. this.armature.playAnimation(Role.AnimationName_Idle,0);
  16. super.onLoad();
  17. }
  18. public mark:cc.Node;
  19. /**
  20. * 创建预备攻击提示标志
  21. * @param direction 1为左,-1为右
  22. * @param autoDestroy 自动销毁
  23. * @param callback 回调函数
  24. */
  25. public createMark(direction:number,autoDestroy:boolean,callback:Function):void{
  26. this.mark = new cc.Node();
  27. this.mark.setScale(3);
  28. this.mark.setPosition(this.node.position.add(cc.v2(-250*direction,650)));
  29. this.mark.addComponent(cc.Sprite).spriteFrame = cc.loader.getRes('texture/mark',cc.SpriteFrame);
  30. window.gameMgr.background.addChild(this.mark);
  31. this.mark.runAction(cc.sequence(cc.shake(0.4,5,10),cc.callFunc(()=>{
  32. if(autoDestroy){
  33. this.mark.destroy();
  34. }
  35. if(callback){
  36. callback();
  37. }
  38. },this)));
  39. cc.audioEngine.playEffect(cc.loader.getRes('audio/ding',cc.AudioClip),false);
  40. }
  41. }