# UI_Window_Story_StoryWindow_548.luac
; fn @StoryWindow.lua  line 0-0 np=0 va=1 ms=3 code=56 consts=22 upvals=1 protos=15
;   K[0]='StoryWindow'
;   K[1]='setmetatable'
;   K[2]='canCloseByAndroidBack'
;   K[3]=false
;   K[4]='showWindowMask'
;   K[5]='BaseWindow'
;   K[6]='__index'
;   K[7]='BeforeOpenCheck'
;   K[8]='Init'
;   K[9]='OnDestroy'
;   K[10]='GetComponent'
;   K[11]='OnMaskClicked'
;   K[12]='_ForwardStep'
;   K[13]='_GetCurrentStepData'
;   K[14]='_Next'
;   K[15]='_NextComponent'
;   K[16]='Enter'
;   K[17]='_DoEnterAnimation'
;   K[18]='Leave'
;   K[19]='_DoLeaveAnimation'
;   K[20]='GetSkipBIInfo'
;   K[21]='OnSkipButtonClicked'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  SETTABLE  R1[K2('canCloseByAndroidBack')] = K3(false)
0003  SETTABLE  R1[K4('showWindowMask')] = K3(false)
0004  GETTABUP  R2 = _ENV[K5('BaseWindow')]
0005  CALL      R0 = call(R0, 1 args, 2 rets)
0006  SETTABUP  _ENV[K0('StoryWindow')] = R0
0007  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0008  GETTABUP  R1 = _ENV[K0('StoryWindow')]
0009  SETTABLE  R0[K6('__index')] = R1
0010  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0011  CLOSURE   R1 = closure proto0
0012  SETTABLE  R0[K7('BeforeOpenCheck')] = R1
0013  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0014  CLOSURE   R1 = closure proto1
0015  SETTABLE  R0[K8('Init')] = R1
0016  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0017  CLOSURE   R1 = closure proto2
0018  SETTABLE  R0[K9('OnDestroy')] = R1
0019  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0020  CLOSURE   R1 = closure proto3
0021  SETTABLE  R0[K10('GetComponent')] = R1
0022  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0023  CLOSURE   R1 = closure proto4
0024  SETTABLE  R0[K11('OnMaskClicked')] = R1
0025  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0026  CLOSURE   R1 = closure proto5
0027  SETTABLE  R0[K12('_ForwardStep')] = R1
0028  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0029  CLOSURE   R1 = closure proto6
0030  SETTABLE  R0[K13('_GetCurrentStepData')] = R1
0031  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0032  CLOSURE   R1 = closure proto7
0033  SETTABLE  R0[K14('_Next')] = R1
0034  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0035  CLOSURE   R1 = closure proto8
0036  SETTABLE  R0[K15('_NextComponent')] = R1
0037  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0038  CLOSURE   R1 = closure proto9
0039  SETTABLE  R0[K16('Enter')] = R1
0040  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0041  CLOSURE   R1 = closure proto10
0042  SETTABLE  R0[K17('_DoEnterAnimation')] = R1
0043  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0044  CLOSURE   R1 = closure proto11
0045  SETTABLE  R0[K18('Leave')] = R1
0046  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0047  CLOSURE   R1 = closure proto12
0048  SETTABLE  R0[K19('_DoLeaveAnimation')] = R1
0049  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0050  CLOSURE   R1 = closure proto13
0051  SETTABLE  R0[K20('GetSkipBIInfo')] = R1
0052  GETTABUP  R0 = _ENV[K0('StoryWindow')]
0053  CLOSURE   R1 = closure proto14
0054  SETTABLE  R0[K21('OnSkipButtonClicked')] = R1
0055  RETURN    return R0..R-1
; ---------- proto0 [BeforeOpenCheck] ----------
  ; fn ?  line 7-23 np=5 va=0 ms=7 code=39 consts=9 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='ChapterManager'
  ;   K[2]='GetActiveRoomView'
  ;   K[3]='Log'
  ;   K[4]='Error'
  ;   K[5]='剧情窗口只可在改造场景打开！'
  ;   K[6]='TimelineManager'
  ;   K[7]='IsPlayingTimeline'
  ;   K[8]='IsSkipping'
  ;   upvals: _ENV
  ;   locals: self(0-39), storyId(0-39), isSpecial(0-39), finishCallback(0-39), bIsTimeline(0-39)
  0000  GETTABUP  R5 = _ENV[K0('GM')]
  0001  GETTABLE  R5 = R5[K1('ChapterManager')]
  0002  SELF      R6 = R5[K2('GetActiveRoomView')] (self)
  0003  CALL      R5 = call(R5, 1 args, 1 rets)
  0004  TEST      if not R5 then   -> -131065
  0005  JMP       (jump)   -> 12
  0006  GETTABUP  R5 = _ENV[K3('Log')]
  0007  GETTABLE  R5 = R5[K4('Error')]
  0008  LOADK     R6 = K5 '剧情窗口只可在改造场景打开！'
  0009  CALL      R5 = call(R5, 0 args, 1 rets)
  0010  LOADBOOL  R5 = false
  0011  RETURN    return R5..R4
  0012  TEST      if not R4 then   -> -131058
  0013  JMP       (jump)   -> 22
  0014  GETTABUP  R5 = _ENV[K0('GM')]
  0015  GETTABLE  R5 = R5[K6('TimelineManager')]
  0016  SELF      R6 = R5[K7('IsPlayingTimeline')] (self)
  0017  CALL      R5 = call(R5, 1 args, 1 rets)
  0018  TEST      if not R5 then   -> -131051
  0019  JMP       (jump)   -> 22
  0020  LOADBOOL  R5 = false
  0021  RETURN    return R5..R4
  0022  GETTABUP  R5 = _ENV[K0('GM')]
  0023  GETTABLE  R5 = R5[K6('TimelineManager')]
  0024  SELF      R6 = R5[K7('IsPlayingTimeline')] (self)
  0025  CALL      R5 = call(R5, 1 args, 1 rets)
  0026  TEST      if not R5 then   -> -131044
  0027  JMP       (jump)   -> 36
  0028  GETTABUP  R5 = _ENV[K0('GM')]
  0029  GETTABLE  R5 = R5[K6('TimelineManager')]
  0030  SELF      R6 = R5[K8('IsSkipping')] (self)
  0031  CALL      R5 = call(R5, 1 args, 1 rets)
  0032  TEST      if not R5 then   -> -131038
  0033  JMP       (jump)   -> 36
  0034  LOADBOOL  R5 = false
  0035  RETURN    return R5..R4
  0036  LOADBOOL  R5 = true
  0037  RETURN    return R5..R4
  0038  RETURN    return R0..R-1
; ---------- proto1 [Init] ----------
  ; fn ?  line 25-62 np=4 va=0 ms=13 code=69 consts=33 upvals=1 protos=1
  ;   K[0]='m_storyId'
  ;   K[1]='m_currentStep'
  ;   K[2]=0
  ;   K[3]='m_currentCompType'
  ;   K[4]=nil
  ;   K[5]='m_finishCallback'
  ;   K[6]='m_openWindowTime'
  ;   K[7]='GM'
  ;   K[8]='GameModel'
  ;   K[9]='GetServerTime'
  ;   K[10]='pairs'
  ;   K[11]='EStoryComponentType'
  ;   K[12]='GetComponent'
  ;   K[13]='Init'
  ;   K[14]='m_skipBtnTrans'
  ;   K[15]='gameObject'
  ;   K[16]='SetActive'
  ;   K[17]='m_darkTopTrans'
  ;   K[18]='SetLocalScaleY'
  ;   K[19]='m_darkBtmTrans'
  ;   K[20]='StoryDataModel'
  ;   K[21]='GetStoryData'
  ;   K[22]='c_id'
  ;   K[23]='ChapterDataModel'
  ;   K[24]='GetChapterIdByName'
  ;   K[25]='TaskManager'
  ;   K[26]='GetOngoingChapterName'
  ;   K[27]='id'
  ;   K[28]='BIManager'
  ;   K[29]='TableToString'
  ;   K[30]='LogAction'
  ;   K[31]='EBIType'
  ;   K[32]='StartStory'
  ;   upvals: _ENV
  ;   locals: self(0-69), storyId(0-69), isSpecialStory(0-69), finishCallback(0-69), cmp(10-69), (for generator)(13-24), (for state)(13-24), (for control)(13-24), _(14-22), eCompType(14-22), info(56-69), actionString(61-69)
  0000  SETTABLE  R0[K0('m_storyId')] = R1
  0001  SETTABLE  R0[K1('m_currentStep')] = K2(0)
  0002  SETTABLE  R0[K3('m_currentCompType')] = K4(nil)
  0003  SETTABLE  R0[K5('m_finishCallback')] = R3
  0004  GETTABUP  R4 = _ENV[K7('GM')]
  0005  GETTABLE  R4 = R4[K8('GameModel')]
  0006  SELF      R5 = R4[K9('GetServerTime')] (self)
  0007  CALL      R4 = call(R4, 1 args, 1 rets)
  0008  SETTABLE  R0[K6('m_openWindowTime')] = R4
  0009  LOADNIL   R4..R4 = nil
  0010  GETTABUP  R5 = _ENV[K10('pairs')]
  0011  GETTABUP  R6 = _ENV[K11('EStoryComponentType')]
  0012  CALL      R5 = call(R5, 3 args, 1 rets)
  0013  JMP       (jump)   -> 22
  0014  SELF      R11 = R0[K12('GetComponent')] (self)
  0015  MOVE      R12 = R0
  0016  CALL      R10 = call(R10, 1 args, 2 rets)
  0017  MOVE      R4 = R0
  0018  TEST      if not R4 then   -> -131052
  0019  JMP       (jump)   -> 22
  0020  SELF      R11 = R4[K13('Init')] (self)
  0021  CALL      R10 = call(R10, 0 args, 1 rets)
  0022  TFORCALL  tforcall R5
  0023  TFORLOOP  tforloop R7(sBx=-10)   -> 14
  0024  GETTABLE  R5 = R0[K14('m_skipBtnTrans')]
  0025  GETTABLE  R5 = R5[K15('gameObject')]
  0026  SELF      R6 = R5[K16('SetActive')] (self)
  0027  LOADBOOL  R7 = false
  0028  CALL      R5 = call(R5, 0 args, 2 rets)
  0029  GETTABLE  R5 = R0[K17('m_darkTopTrans')]
  0030  SELF      R6 = R5[K18('SetLocalScaleY')] (self)
  0031  LOADK     R7 = K2 0
  0032  CALL      R5 = call(R5, 0 args, 2 rets)
  0033  GETTABLE  R5 = R0[K19('m_darkBtmTrans')]
  0034  SELF      R6 = R5[K18('SetLocalScaleY')] (self)
  0035  LOADK     R7 = K2 0
  0036  CALL      R5 = call(R5, 0 args, 2 rets)
  0037  GETTABUP  R5 = _ENV[K7('GM')]
  0038  GETTABLE  R5 = R5[K20('StoryDataModel')]
  0039  SELF      R6 = R5[K21('GetStoryData')] (self)
  0040  MOVE      R7 = R0
  0041  MOVE      R8 = R0
  0042  CLOSURE   R9 = closure proto0
  0043  CALL      R5 = call(R5, 0 args, 4 rets)
  0044  NEWTABLE  R5 = {} (0 items)
  0045  GETTABUP  R6 = _ENV[K7('GM')]
  0046  GETTABLE  R6 = R6[K23('ChapterDataModel')]
  0047  SELF      R7 = R6[K24('GetChapterIdByName')] (self)
  0048  GETTABUP  R8 = _ENV[K7('GM')]
  0049  GETTABLE  R8 = R8[K25('TaskManager')]
  0050  SELF      R9 = R8[K26('GetOngoingChapterName')] (self)
  0051  CALL      R8 = call(R8, -1 args, 1 rets)
  0052  CALL      R6 = call(R6, 1 args, -1 rets)
  0053  SETTABLE  R5[K22('c_id')] = R6
  0054  GETTABLE  R6 = R0[K0('m_storyId')]
  0055  SETTABLE  R5[K27('id')] = R6
  0056  GETTABUP  R6 = _ENV[K7('GM')]
  0057  GETTABLE  R6 = R6[K28('BIManager')]
  0058  SELF      R7 = R6[K29('TableToString')] (self)
  0059  MOVE      R8 = R0
  0060  CALL      R6 = call(R6, 1 args, 2 rets)
  0061  GETTABUP  R7 = _ENV[K7('GM')]
  0062  GETTABLE  R7 = R7[K28('BIManager')]
  0063  SELF      R8 = R7[K30('LogAction')] (self)
  0064  GETTABUP  R9 = _ENV[K31('EBIType')]
  0065  GETTABLE  R9 = R9[K32('StartStory')]
  0066  MOVE      R10 = R0
  0067  CALL      R7 = call(R7, 0 args, 3 rets)
  0068  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 47-54 np=1 va=0 ms=4 code=6 consts=2 upvals=1 protos=1
    ;   K[0]='m_arrStepData'
    ;   K[1]='Enter'
    ;   upvals: self
    ;   locals: storyData(0-6)
    0000  SETTABUP  self[K0('m_arrStepData')] = R0
    0001  GETUPVAL  R1 = self
    0002  SELF      R2 = R1[K1('Enter')] (self)
    0003  CLOSURE   R3 = closure proto0
    0004  CALL      R1 = call(R1, 0 args, 2 rets)
    0005  RETURN    return R0..R-1
    ; ---------- proto0 [] ----------
      ; fn ?  line 50-53 np=0 va=0 ms=2 code=5 consts=3 upvals=1 protos=0
      ;   K[0]='m_initialized'
      ;   K[1]=true
      ;   K[2]='_Next'
      ;   upvals: self
      0000  SETTABUP  self[K0('m_initialized')] = K1(true)
      0001  GETUPVAL  R0 = self
      0002  SELF      R1 = R0[K2('_Next')] (self)
      0003  CALL      R0 = call(R0, 0 args, 1 rets)
      0004  RETURN    return R0..R-1
; ---------- proto2 [OnDestroy] ----------
  ; fn ?  line 64-83 np=1 va=0 ms=7 code=52 consts=26 upvals=1 protos=0
  ;   K[0]='c_id'
  ;   K[1]='GM'
  ;   K[2]='ChapterDataModel'
  ;   K[3]='GetChapterIdByName'
  ;   K[4]='TaskManager'
  ;   K[5]='GetOngoingChapterName'
  ;   K[6]='id'
  ;   K[7]='m_storyId'
  ;   K[8]='d'
  ;   K[9]='GameModel'
  ;   K[10]='GetServerTime'
  ;   K[11]='m_openWindowTime'
  ;   K[12]='w'
  ;   K[13]='m_arrStepData'
  ;   K[14]='BIManager'
  ;   K[15]='TableToString'
  ;   K[16]='LogAction'
  ;   K[17]='EBIType'
  ;   K[18]='StoryDuration'
  ;   K[19]='BaseWindow'
  ;   K[20]='OnDestroy'
  ;   K[21]='UIManager'
  ;   K[22]='RemoveAllEventLocks'
  ;   K[23]='m_darkTween'
  ;   K[24]='Complete'
  ;   K[25]=nil
  ;   upvals: _ENV
  ;   locals: self(0-52), info(22-52), actionString(27-52)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  GETTABUP  R2 = _ENV[K1('GM')]
  0002  GETTABLE  R2 = R2[K2('ChapterDataModel')]
  0003  SELF      R3 = R2[K3('GetChapterIdByName')] (self)
  0004  GETTABUP  R4 = _ENV[K1('GM')]
  0005  GETTABLE  R4 = R4[K4('TaskManager')]
  0006  SELF      R5 = R4[K5('GetOngoingChapterName')] (self)
  0007  CALL      R4 = call(R4, -1 args, 1 rets)
  0008  CALL      R2 = call(R2, 1 args, -1 rets)
  0009  SETTABLE  R1[K0('c_id')] = R2
  0010  GETTABLE  R2 = R0[K7('m_storyId')]
  0011  SETTABLE  R1[K6('id')] = R2
  0012  GETTABUP  R2 = _ENV[K1('GM')]
  0013  GETTABLE  R2 = R2[K9('GameModel')]
  0014  SELF      R3 = R2[K10('GetServerTime')] (self)
  0015  CALL      R2 = call(R2, 1 args, 1 rets)
  0016  GETTABLE  R3 = R0[K11('m_openWindowTime')]
  0017  SUB       R2 = R3 sub R2
  0018  SETTABLE  R1[K8('d')] = R2
  0019  GETTABLE  R2 = R0[K13('m_arrStepData')]
  0020  LEN       R2 = len R0
  0021  SETTABLE  R1[K12('w')] = R2
  0022  GETTABUP  R2 = _ENV[K1('GM')]
  0023  GETTABLE  R2 = R2[K14('BIManager')]
  0024  SELF      R3 = R2[K15('TableToString')] (self)
  0025  MOVE      R4 = R0
  0026  CALL      R2 = call(R2, 1 args, 2 rets)
  0027  GETTABUP  R3 = _ENV[K1('GM')]
  0028  GETTABLE  R3 = R3[K14('BIManager')]
  0029  SELF      R4 = R3[K16('LogAction')] (self)
  0030  GETTABUP  R5 = _ENV[K17('EBIType')]
  0031  GETTABLE  R5 = R5[K18('StoryDuration')]
  0032  MOVE      R6 = R0
  0033  CALL      R3 = call(R3, 0 args, 3 rets)
  0034  GETTABUP  R3 = _ENV[K19('BaseWindow')]
  0035  GETTABLE  R3 = R3[K20('OnDestroy')]
  0036  MOVE      R4 = R0
  0037  CALL      R3 = call(R3, 0 args, 1 rets)
  0038  GETTABUP  R3 = _ENV[K1('GM')]
  0039  GETTABLE  R3 = R3[K21('UIManager')]
  0040  SELF      R4 = R3[K22('RemoveAllEventLocks')] (self)
  0041  MOVE      R5 = R0
  0042  CALL      R3 = call(R3, 0 args, 2 rets)
  0043  GETTABLE  R3 = R0[K23('m_darkTween')]
  0044  TEST      if not R3 then   -> -131026
  0045  JMP       (jump)   -> 51
  0046  GETTABLE  R3 = R0[K23('m_darkTween')]
  0047  SELF      R4 = R3[K24('Complete')] (self)
  0048  LOADBOOL  R5 = true
  0049  CALL      R3 = call(R3, 0 args, 2 rets)
  0050  SETTABLE  R0[K23('m_darkTween')] = K25(nil)
  0051  RETURN    return R0..R-1
; ---------- proto3 [GetComponent] ----------
  ; fn ?  line 85-93 np=2 va=0 ms=3 code=17 consts=5 upvals=1 protos=0
  ;   K[0]='EStoryComponentType'
  ;   K[1]='Left'
  ;   K[2]='m_leftComponent'
  ;   K[3]='Right'
  ;   K[4]='m_rightComponent'
  ;   upvals: _ENV
  ;   locals: self(0-17), eCompType(0-17)
  0000  GETTABUP  R2 = _ENV[K0('EStoryComponentType')]
  0001  GETTABLE  R2 = R2[K1('Left')]
  0002  EQ        if R0 eq R2   -> -130554
  0003  JMP       (jump)   -> 7
  0004  GETTABLE  R2 = R0[K2('m_leftComponent')]
  0005  RETURN    return R2..R1
  0006  JMP       (jump)   -> 16
  0007  GETTABUP  R2 = _ENV[K0('EStoryComponentType')]
  0008  GETTABLE  R2 = R2[K3('Right')]
  0009  EQ        if R0 eq R2   -> -130547
  0010  JMP       (jump)   -> 14
  0011  GETTABLE  R2 = R0[K4('m_rightComponent')]
  0012  RETURN    return R2..R1
  0013  JMP       (jump)   -> 16
  0014  LOADNIL   R2..R2 = nil
  0015  RETURN    return R2..R1
  0016  RETURN    return R0..R-1
; ---------- proto4 [OnMaskClicked] ----------
  ; fn ?  line 95-102 np=1 va=0 ms=3 code=7 consts=2 upvals=0 protos=0
  ;   K[0]='m_initialized'
  ;   K[1]='_Next'
  ;   locals: self(0-7)
  0000  GETTABLE  R1 = R0[K0('m_initialized')]
  0001  TEST      if not R1 then   -> -131068
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  SELF      R2 = R0[K1('_Next')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto5 [_ForwardStep] ----------
  ; fn ?  line 104-112 np=2 va=0 ms=5 code=16 consts=4 upvals=0 protos=0
  ;   K[0]='_GetCurrentStepData'
  ;   K[1]='m_arrStepData'
  ;   K[2]='m_currentStep'
  ;   K[3]=1
  ;   locals: self(0-16), nextScene(0-16), stepData(2-16), maxStep(4-16)
  0000  SELF      R3 = R0[K0('_GetCurrentStepData')] (self)
  0001  CALL      R2 = call(R2, 1 args, 1 rets)
  0002  GETTABLE  R3 = R0[K1('m_arrStepData')]
  0003  LEN       R3 = len R0
  0004  TEST      if not R1 then   -> -131066
  0005  JMP       (jump)   -> 9
  0006  GETTABLE  R4 = R0[K2('m_currentStep')]
  0007  LE        if R0 le R4   -> -129523
  0008  JMP       (jump)   -> 13
  0009  GETTABLE  R4 = R0[K2('m_currentStep')]
  0010  ADD       R4 = K3(1) add R4
  0011  SETTABLE  R0[K2('m_currentStep')] = R4
  0012  JMP       (jump)   -> 15
  0013  ADD       R4 = K3(1) add R3
  0014  SETTABLE  R0[K2('m_currentStep')] = R4
  0015  RETURN    return R0..R-1
; ---------- proto6 [_GetCurrentStepData] ----------
  ; fn ?  line 114-116 np=1 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_arrStepData'
  ;   K[1]='m_currentStep'
  ;   locals: self(0-5)
  0000  GETTABLE  R1 = R0[K0('m_arrStepData')]
  0001  GETTABLE  R2 = R0[K1('m_currentStep')]
  0002  GETTABLE  R1 = R1[R2]
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto7 [_Next] ----------
  ; fn ?  line 119-142 np=2 va=0 ms=11 code=29 consts=8 upvals=0 protos=1
  ;   K[0]='_ForwardStep'
  ;   K[1]='GetComponent'
  ;   K[2]='m_currentCompType'
  ;   K[3]='_GetCurrentStepData'
  ;   K[4]=nil
  ;   K[5]='Leave'
  ;   K[6]='GetCompType'
  ;   K[7]='_NextComponent'
  ;   locals: self(0-29), nextScene(0-29), currentComponent(6-29), nextStepData(8-29), nextCompType(20-28), nextComponent(23-28)
  0000  SELF      R3 = R0[K0('_ForwardStep')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 0 args, 2 rets)
  0003  SELF      R3 = R0[K1('GetComponent')] (self)
  0004  GETTABLE  R4 = R0[K2('m_currentCompType')]
  0005  CALL      R2 = call(R2, 1 args, 2 rets)
  0006  SELF      R4 = R0[K3('_GetCurrentStepData')] (self)
  0007  CALL      R3 = call(R3, 1 args, 1 rets)
  0008  EQ        if R0 eq K4(nil)   -> -129266
  0009  JMP       (jump)   -> 18
  0010  TEST      if not R2 then   -> -131060
  0011  JMP       (jump)   -> 14
  0012  SELF      R5 = R2[K5('Leave')] (self)
  0013  CALL      R4 = call(R4, 0 args, 1 rets)
  0014  SELF      R5 = R0[K5('Leave')] (self)
  0015  CLOSURE   R6 = closure proto0
  0016  CALL      R4 = call(R4, 0 args, 2 rets)
  0017  JMP       (jump)   -> 28
  0018  SELF      R5 = R3[K6('GetCompType')] (self)
  0019  CALL      R4 = call(R4, 1 args, 1 rets)
  0020  SELF      R6 = R0[K1('GetComponent')] (self)
  0021  MOVE      R7 = R0
  0022  CALL      R5 = call(R5, 1 args, 2 rets)
  0023  SELF      R7 = R0[K7('_NextComponent')] (self)
  0024  MOVE      R8 = R0
  0025  MOVE      R9 = R0
  0026  MOVE      R10 = R0
  0027  CALL      R6 = call(R6, 0 args, 4 rets)
  0028  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 129-134 np=0 va=0 ms=2 code=9 consts=2 upvals=1 protos=0
    ;   K[0]='m_finishCallback'
    ;   K[1]='Close'
    ;   upvals: self
    0000  GETTABUP  R0 = self[K0('m_finishCallback')]
    0001  TEST      if not R0 then   -> -131069
    0002  JMP       (jump)   -> 5
    0003  GETTABUP  R0 = self[K0('m_finishCallback')]
    0004  CALL      R0 = call(R0, 0 args, 0 rets)
    0005  GETUPVAL  R0 = self
    0006  SELF      R1 = R0[K1('Close')] (self)
    0007  CALL      R0 = call(R0, 0 args, 1 rets)
    0008  RETURN    return R0..R-1
; ---------- proto8 [_NextComponent] ----------
  ; fn ?  line 144-188 np=4 va=0 ms=11 code=71 consts=25 upvals=1 protos=2
  ;   K[0]='GM'
  ;   K[1]='TimelineManager'
  ;   K[2]='IsPlayingTimeline'
  ;   K[3]='m_currentStep'
  ;   K[4]=1
  ;   K[5]='animationName'
  ;   K[6]='ChapterManager'
  ;   K[7]='GetActiveRoomView'
  ;   K[8]='bLoopAnimation'
  ;   K[9]=nil
  ;   K[10]='Log'
  ;   K[11]='Assert'
  ;   K[12]='没有剧情对话时，角色动作不能循环'
  ;   K[13]='第一个剧情对话不应为空'
  ;   K[14]='UpdateContent'
  ;   K[15]='m_currentCompType'
  ;   K[16]='GetCompType'
  ;   K[17]='Leave'
  ;   K[18]='transform'
  ;   K[19]='SetAsLastSibling'
  ;   K[20]='Enter'
  ;   K[21]='IsAutoRun'
  ;   K[22]='DOVirtual'
  ;   K[23]='DelayedCall'
  ;   K[24]=0.2
  ;   upvals: _ENV
  ;   locals: self(0-71), currentComponent(0-71), nextComponent(0-71), nextStepData(0-71), isStoryFirstStepInTimeline(11-71), chapterView(20-31), loop(21-31), callback(22-31)
  0000  GETTABUP  R4 = _ENV[K0('GM')]
  0001  GETTABLE  R4 = R4[K1('TimelineManager')]
  0002  SELF      R5 = R4[K2('IsPlayingTimeline')] (self)
  0003  CALL      R4 = call(R4, 1 args, 1 rets)
  0004  TEST      if not R4 then   -> -131066
  0005  JMP       (jump)   -> 11
  0006  GETTABLE  R4 = R0[K3('m_currentStep')]
  0007  EQ        if R1 eq K4(1)   -> -128755
  0008  JMP       (jump)   -> 10
  0009  LOADBOOL  R4 = false
  0010  LOADBOOL  R4 = true
  0011  TEST      if not R4 then   -> -131058
  0012  JMP       (jump)   -> 32
  0013  GETTABLE  R5 = R3[K5('animationName')]
  0014  TEST      if not R5 then   -> -131056
  0015  JMP       (jump)   -> 40
  0016  GETTABUP  R5 = _ENV[K0('GM')]
  0017  GETTABLE  R5 = R5[K6('ChapterManager')]
  0018  SELF      R6 = R5[K7('GetActiveRoomView')] (self)
  0019  CALL      R5 = call(R5, 1 args, 1 rets)
  0020  GETTABLE  R6 = R3[K8('bLoopAnimation')]
  0021  LOADNIL   R7..R7 = nil
  0022  EQ        if R0 eq K9(nil)   -> -129759
  0023  JMP       (jump)   -> 40
  0024  GETTABUP  R8 = _ENV[K10('Log')]
  0025  GETTABLE  R8 = R8[K11('Assert')]
  0026  NOT       R9 = not R0
  0027  LOADK     R10 = K12 '没有剧情对话时，角色动作不能循环'
  0028  CALL      R8 = call(R8, 0 args, 2 rets)
  0029  CLOSURE   R8 = closure proto0
  0030  MOVE      R7 = R0
  0031  JMP       (jump)   -> 40
  0032  GETTABUP  R5 = _ENV[K10('Log')]
  0033  GETTABLE  R5 = R5[K11('Assert')]
  0034  EQ        if R0 eq K9(nil)   -> -129747
  0035  JMP       (jump)   -> 37
  0036  LOADBOOL  R6 = false
  0037  LOADBOOL  R6 = true
  0038  LOADK     R7 = K13 '第一个剧情对话不应为空'
  0039  CALL      R5 = call(R5, 0 args, 2 rets)
  0040  TEST      if not R2 then   -> -131030
  0041  JMP       (jump)   -> 45
  0042  SELF      R6 = R2[K14('UpdateContent')] (self)
  0043  MOVE      R7 = R0
  0044  CALL      R5 = call(R5, 0 args, 2 rets)
  0045  EQ        if R1 eq R2   -> -130511
  0046  JMP       (jump)   -> 61
  0047  SELF      R6 = R3[K16('GetCompType')] (self)
  0048  CALL      R5 = call(R5, 1 args, 1 rets)
  0049  SETTABLE  R0[K15('m_currentCompType')] = R5
  0050  TEST      if not R1 then   -> -131020
  0051  JMP       (jump)   -> 54
  0052  SELF      R6 = R1[K17('Leave')] (self)
  0053  CALL      R5 = call(R5, 0 args, 1 rets)
  0054  TEST      if not R2 then   -> -131016
  0055  JMP       (jump)   -> 61
  0056  GETTABLE  R5 = R2[K18('transform')]
  0057  SELF      R6 = R5[K19('SetAsLastSibling')] (self)
  0058  CALL      R5 = call(R5, 0 args, 1 rets)
  0059  SELF      R6 = R2[K20('Enter')] (self)
  0060  CALL      R5 = call(R5, 0 args, 1 rets)
  0061  GETTABUP  R5 = _ENV[K21('IsAutoRun')]
  0062  CALL      R5 = call(R5, 1 args, 0 rets)
  0063  TEST      if not R5 then   -> -131007
  0064  JMP       (jump)   -> 70
  0065  GETTABUP  R5 = _ENV[K22('DOVirtual')]
  0066  GETTABLE  R5 = R5[K23('DelayedCall')]
  0067  LOADK     R6 = K24 0.2
  0068  CLOSURE   R7 = closure proto1
  0069  CALL      R5 = call(R5, 0 args, 2 rets)
  0070  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 155-157 np=0 va=0 ms=2 code=4 consts=1 upvals=1 protos=0
    ;   K[0]='_Next'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('_Next')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 186-186 np=0 va=0 ms=2 code=4 consts=1 upvals=1 protos=0
    ;   K[0]='_Next'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('_Next')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  RETURN    return R0..R-1
; ---------- proto9 [Enter] ----------
  ; fn ?  line 191-193 np=2 va=0 ms=5 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='_DoEnterAnimation'
  ;   locals: self(0-4), onFinish(0-4)
  0000  SELF      R3 = R0[K0('_DoEnterAnimation')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 0 args, 2 rets)
  0003  RETURN    return R0..R-1
; ---------- proto10 [_DoEnterAnimation] ----------
  ; fn ?  line 195-212 np=2 va=0 ms=10 code=37 consts=16 upvals=1 protos=0
  ;   K[0]='m_darkTween'
  ;   K[1]='Complete'
  ;   K[2]=nil
  ;   K[3]=0.35
  ;   K[4]='DOTween'
  ;   K[5]='Sequence'
  ;   K[6]='SetEase'
  ;   K[7]='Ease'
  ;   K[8]='OutSine'
  ;   K[9]='Append'
  ;   K[10]='m_darkTopTrans'
  ;   K[11]='DOScaleY'
  ;   K[12]=1
  ;   K[13]='Join'
  ;   K[14]='m_darkBtmTrans'
  ;   K[15]='AppendCallback'
  ;   upvals: _ENV
  ;   locals: self(0-37), onFinish(0-37), dt(9-37), s(16-37)
  0000  GETTABLE  R2 = R0[K0('m_darkTween')]
  0001  TEST      if not R2 then   -> -131069
  0002  JMP       (jump)   -> 8
  0003  GETTABLE  R2 = R0[K0('m_darkTween')]
  0004  SELF      R3 = R2[K1('Complete')] (self)
  0005  LOADBOOL  R4 = true
  0006  CALL      R2 = call(R2, 0 args, 2 rets)
  0007  SETTABLE  R0[K0('m_darkTween')] = K2(nil)
  0008  LOADK     R2 = K3 0.35
  0009  GETTABUP  R3 = _ENV[K4('DOTween')]
  0010  GETTABLE  R3 = R3[K5('Sequence')]
  0011  CALL      R3 = call(R3, 1 args, 0 rets)
  0012  SELF      R4 = R3[K6('SetEase')] (self)
  0013  GETTABUP  R5 = _ENV[K7('Ease')]
  0014  GETTABLE  R5 = R5[K8('OutSine')]
  0015  CALL      R3 = call(R3, 1 args, 2 rets)
  0016  SELF      R5 = R3[K9('Append')] (self)
  0017  GETTABLE  R6 = R0[K10('m_darkTopTrans')]
  0018  SELF      R7 = R6[K11('DOScaleY')] (self)
  0019  LOADK     R8 = K12 1
  0020  MOVE      R9 = R0
  0021  CALL      R6 = call(R6, -1 args, 3 rets)
  0022  CALL      R4 = call(R4, 0 args, -1 rets)
  0023  SELF      R5 = R3[K13('Join')] (self)
  0024  GETTABLE  R6 = R0[K14('m_darkBtmTrans')]
  0025  SELF      R7 = R6[K11('DOScaleY')] (self)
  0026  LOADK     R8 = K12 1
  0027  MOVE      R9 = R0
  0028  CALL      R6 = call(R6, -1 args, 3 rets)
  0029  CALL      R4 = call(R4, 0 args, -1 rets)
  0030  TEST      if not R1 then   -> -131040
  0031  JMP       (jump)   -> 35
  0032  SELF      R5 = R3[K15('AppendCallback')] (self)
  0033  MOVE      R6 = R0
  0034  CALL      R4 = call(R4, 0 args, 2 rets)
  0035  SETTABLE  R0[K0('m_darkTween')] = R3
  0036  RETURN    return R0..R-1
; ---------- proto11 [Leave] ----------
  ; fn ?  line 215-223 np=2 va=0 ms=5 code=9 consts=3 upvals=0 protos=0
  ;   K[0]='m_bHasLeft'
  ;   K[1]=true
  ;   K[2]='_DoLeaveAnimation'
  ;   locals: self(0-9), onFinish(0-9)
  0000  GETTABLE  R2 = R0[K0('m_bHasLeft')]
  0001  TEST      if not R2 then   -> -131069
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  SETTABLE  R0[K0('m_bHasLeft')] = K1(true)
  0005  SELF      R3 = R0[K2('_DoLeaveAnimation')] (self)
  0006  MOVE      R4 = R0
  0007  CALL      R2 = call(R2, 0 args, 2 rets)
  0008  RETURN    return R0..R-1
; ---------- proto12 [_DoLeaveAnimation] ----------
  ; fn ?  line 225-247 np=2 va=0 ms=10 code=46 consts=22 upvals=1 protos=1
  ;   K[0]='GM'
  ;   K[1]='UIManager'
  ;   K[2]='SetEventLock'
  ;   K[3]='m_skipBtnTrans'
  ;   K[4]='gameObject'
  ;   K[5]='SetActive'
  ;   K[6]='m_darkTween'
  ;   K[7]='Complete'
  ;   K[8]=nil
  ;   K[9]=0.35
  ;   K[10]='DOTween'
  ;   K[11]='Sequence'
  ;   K[12]='SetEase'
  ;   K[13]='Ease'
  ;   K[14]='OutSine'
  ;   K[15]='Append'
  ;   K[16]='m_darkTopTrans'
  ;   K[17]='DOScaleY'
  ;   K[18]=0
  ;   K[19]='Join'
  ;   K[20]='m_darkBtmTrans'
  ;   K[21]='AppendCallback'
  ;   upvals: _ENV
  ;   locals: self(0-46), onFinish(0-46), dt(20-46), s(27-46)
  0000  GETTABUP  R2 = _ENV[K0('GM')]
  0001  GETTABLE  R2 = R2[K1('UIManager')]
  0002  SELF      R3 = R2[K2('SetEventLock')] (self)
  0003  LOADBOOL  R4 = true
  0004  MOVE      R5 = R0
  0005  CALL      R2 = call(R2, 0 args, 3 rets)
  0006  GETTABLE  R2 = R0[K3('m_skipBtnTrans')]
  0007  GETTABLE  R2 = R2[K4('gameObject')]
  0008  SELF      R3 = R2[K5('SetActive')] (self)
  0009  LOADBOOL  R4 = false
  0010  CALL      R2 = call(R2, 0 args, 2 rets)
  0011  GETTABLE  R2 = R0[K6('m_darkTween')]
  0012  TEST      if not R2 then   -> -131058
  0013  JMP       (jump)   -> 19
  0014  GETTABLE  R2 = R0[K6('m_darkTween')]
  0015  SELF      R3 = R2[K7('Complete')] (self)
  0016  LOADBOOL  R4 = true
  0017  CALL      R2 = call(R2, 0 args, 2 rets)
  0018  SETTABLE  R0[K6('m_darkTween')] = K8(nil)
  0019  LOADK     R2 = K9 0.35
  0020  GETTABUP  R3 = _ENV[K10('DOTween')]
  0021  GETTABLE  R3 = R3[K11('Sequence')]
  0022  CALL      R3 = call(R3, 1 args, 0 rets)
  0023  SELF      R4 = R3[K12('SetEase')] (self)
  0024  GETTABUP  R5 = _ENV[K13('Ease')]
  0025  GETTABLE  R5 = R5[K14('OutSine')]
  0026  CALL      R3 = call(R3, 1 args, 2 rets)
  0027  SELF      R5 = R3[K15('Append')] (self)
  0028  GETTABLE  R6 = R0[K16('m_darkTopTrans')]
  0029  SELF      R7 = R6[K17('DOScaleY')] (self)
  0030  LOADK     R8 = K18 0
  0031  MOVE      R9 = R0
  0032  CALL      R6 = call(R6, -1 args, 3 rets)
  0033  CALL      R4 = call(R4, 0 args, -1 rets)
  0034  SELF      R5 = R3[K19('Join')] (self)
  0035  GETTABLE  R6 = R0[K20('m_darkBtmTrans')]
  0036  SELF      R7 = R6[K17('DOScaleY')] (self)
  0037  LOADK     R8 = K18 0
  0038  MOVE      R9 = R0
  0039  CALL      R6 = call(R6, -1 args, 3 rets)
  0040  CALL      R4 = call(R4, 0 args, -1 rets)
  0041  SELF      R5 = R3[K21('AppendCallback')] (self)
  0042  CLOSURE   R6 = closure proto0
  0043  CALL      R4 = call(R4, 0 args, 2 rets)
  0044  SETTABLE  R0[K6('m_darkTween')] = R3
  0045  RETURN    return R0..R-1
  ; ---------- proto0 [m_darkTween] ----------
    ; fn ?  line 240-245 np=0 va=0 ms=4 code=12 consts=3 upvals=3 protos=0
    ;   K[0]='GM'
    ;   K[1]='UIManager'
    ;   K[2]='SetEventLock'
    ;   upvals: _ENV, self, onFinish
    0000  GETTABUP  R0 = _ENV[K0('GM')]
    0001  GETTABLE  R0 = R0[K1('UIManager')]
    0002  SELF      R1 = R0[K2('SetEventLock')] (self)
    0003  LOADBOOL  R2 = false
    0004  GETUPVAL  R3 = _ENV
    0005  CALL      R0 = call(R0, 0 args, 3 rets)
    0006  GETUPVAL  R0 = _ENV
    0007  TEST      if not R0 then   -> -131063
    0008  JMP       (jump)   -> 11
    0009  GETUPVAL  R0 = _ENV
    0010  CALL      R0 = call(R0, 0 args, 0 rets)
    0011  RETURN    return R0..R-1
; ---------- proto13 [GetSkipBIInfo] ----------
  ; fn ?  line 250-256 np=1 va=0 ms=3 code=7 consts=4 upvals=0 protos=0
  ;   K[0]='s_id'
  ;   K[1]='m_storyId'
  ;   K[2]='s_stp'
  ;   K[3]='m_currentStep'
  ;   locals: self(0-7), action(5-7)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  GETTABLE  R2 = R0[K1('m_storyId')]
  0002  SETTABLE  R1[K0('s_id')] = R2
  0003  GETTABLE  R2 = R0[K3('m_currentStep')]
  0004  SETTABLE  R1[K2('s_stp')] = R2
  0005  RETURN    return R1..R0
  0006  RETURN    return R0..R-1
; ---------- proto14 [OnSkipButtonClicked] ----------
  ; fn ?  line 258-268 np=1 va=0 ms=7 code=30 consts=16 upvals=1 protos=0
  ;   K[0]='c_id'
  ;   K[1]='GM'
  ;   K[2]='ChapterDataModel'
  ;   K[3]='GetChapterIdByName'
  ;   K[4]='TaskManager'
  ;   K[5]='GetOngoingChapterName'
  ;   K[6]='id'
  ;   K[7]='m_storyId'
  ;   K[8]='step'
  ;   K[9]='m_currentStep'
  ;   K[10]='BIManager'
  ;   K[11]='TableToString'
  ;   K[12]='LogAction'
  ;   K[13]='EBIType'
  ;   K[14]='SkipStory'
  ;   K[15]='_Next'
  ;   upvals: _ENV
  ;   locals: self(0-30), action(14-30), actionString(19-30)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  GETTABUP  R2 = _ENV[K1('GM')]
  0002  GETTABLE  R2 = R2[K2('ChapterDataModel')]
  0003  SELF      R3 = R2[K3('GetChapterIdByName')] (self)
  0004  GETTABUP  R4 = _ENV[K1('GM')]
  0005  GETTABLE  R4 = R4[K4('TaskManager')]
  0006  SELF      R5 = R4[K5('GetOngoingChapterName')] (self)
  0007  CALL      R4 = call(R4, -1 args, 1 rets)
  0008  CALL      R2 = call(R2, 1 args, -1 rets)
  0009  SETTABLE  R1[K0('c_id')] = R2
  0010  GETTABLE  R2 = R0[K7('m_storyId')]
  0011  SETTABLE  R1[K6('id')] = R2
  0012  GETTABLE  R2 = R0[K9('m_currentStep')]
  0013  SETTABLE  R1[K8('step')] = R2
  0014  GETTABUP  R2 = _ENV[K1('GM')]
  0015  GETTABLE  R2 = R2[K10('BIManager')]
  0016  SELF      R3 = R2[K11('TableToString')] (self)
  0017  MOVE      R4 = R0
  0018  CALL      R2 = call(R2, 1 args, 2 rets)
  0019  GETTABUP  R3 = _ENV[K1('GM')]
  0020  GETTABLE  R3 = R3[K10('BIManager')]
  0021  SELF      R4 = R3[K12('LogAction')] (self)
  0022  GETTABUP  R5 = _ENV[K13('EBIType')]
  0023  GETTABLE  R5 = R5[K14('SkipStory')]
  0024  MOVE      R6 = R0
  0025  CALL      R3 = call(R3, 0 args, 3 rets)
  0026  SELF      R4 = R0[K15('_Next')] (self)
  0027  LOADBOOL  R5 = true
  0028  CALL      R3 = call(R3, 0 args, 2 rets)
  0029  RETURN    return R0..R-1
