JG0111_3.ts 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import BaseEvent from "../fight/evnet/base/BaseEvent";
  2. import { SpriteActionType } from "../fight/object/FSprite";
  3. const {ccclass, property} = cc._decorator;
  4. /**
  5. * 剧情
  6. * 落单的精灵:可怜的小鹿……居然被这么古老的机关捉住了。
  7. 角色触碰笼子,提示需要钥匙。
  8. 落单的精灵:这是我见过的排名第一的倒霉动物。
  9. 落单的精灵:我暂且留在这里守护它。
  10. */
  11. @ccclass
  12. export default class JG0111_3 extends BaseEvent {
  13. @property({
  14. displayName: '困住的宠物',
  15. type: cc.Node,
  16. })
  17. mPet: cc.Node = null;
  18. @property({
  19. displayName: '对话用NPC',
  20. type: cc.Node,
  21. })
  22. mNpc: cc.Node = null;
  23. @property({
  24. displayName: '显示的钥匙',
  25. type: cc.Node,
  26. })
  27. mKeyNode: cc.Node = null;
  28. public onBegin(tag: number) {
  29. this.pause()
  30. this.dialog1()
  31. }
  32. private dialog1() {
  33. let text = [
  34. '可怜的小鹿……居然被这么古老的机关捉住了。',
  35. ]
  36. this.showDialog(this.mNpc, text, () => {
  37. this.moveMainSprite()
  38. })
  39. }
  40. /**
  41. * 角色触碰笼子,提示需要钥匙。
  42. */
  43. private moveMainSprite(){
  44. let mainSprite = this.ff.mainSprite
  45. mainSprite.setLR(1)
  46. mainSprite.playAction(SpriteActionType.run, true)
  47. cc.tween(mainSprite.node).sequence(
  48. cc.moveTo(0.5,cc.v2(3336,4322)),
  49. cc.callFunc(()=>{
  50. mainSprite.setLR(-1)
  51. mainSprite.playAction(SpriteActionType.stand, true)
  52. this.mKeyNode.active = true
  53. }),
  54. cc.delayTime(1),
  55. cc.callFunc(()=>{
  56. mainSprite.playAction(SpriteActionType.stand, true)
  57. this.dialog2()
  58. this.mKeyNode.active = false
  59. }),
  60. ).start()
  61. }
  62. private dialog2() {
  63. let text = [
  64. '这是我见过的排名第一的倒霉动物。',
  65. '我暂且留在这里守护它。',
  66. ]
  67. this.showDialog(this.mNpc, text, () => {
  68. this.node.destroy()
  69. this.resume()
  70. })
  71. }
  72. }