# Model_Task_TaskData_201.luac
; fn @TaskData.lua  line 0-0 np=0 va=1 ms=2 code=18 consts=7 upvals=1 protos=4
;   K[0]='TaskData'
;   K[1]='__index'
;   K[2]='Create'
;   K[3]='TaskData'
;   K[4]='Init'
;   K[5]='_GetFirstSlotId'
;   K[6]='_GetSlotIdsStr'
;   upvals: _ENV
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABUP  _ENV[K0('TaskData')] = R0
0002  GETTABUP  R0 = _ENV[K0('TaskData')]
0003  GETTABUP  R1 = _ENV[K0('TaskData')]
0004  SETTABLE  R0[K1('__index')] = R1
0005  GETTABUP  R0 = _ENV[K0('TaskData')]
0006  CLOSURE   R1 = closure proto0
0007  SETTABLE  R0[K2('Create')] = R1
0008  GETTABUP  R0 = _ENV[K3('TaskData')]
0009  CLOSURE   R1 = closure proto1
0010  SETTABLE  R0[K4('Init')] = R1
0011  GETTABUP  R0 = _ENV[K3('TaskData')]
0012  CLOSURE   R1 = closure proto2
0013  SETTABLE  R0[K5('_GetFirstSlotId')] = R1
0014  GETTABUP  R0 = _ENV[K3('TaskData')]
0015  CLOSURE   R1 = closure proto3
0016  SETTABLE  R0[K6('_GetSlotIdsStr')] = R1
0017  RETURN    return R0..R-1
; ---------- proto0 [Create] ----------
  ; fn ?  line 17-21 np=3 va=0 ms=8 code=10 consts=3 upvals=1 protos=0
  ;   K[0]='setmetatable'
  ;   K[1]='TaskData'
  ;   K[2]='Init'
  ;   upvals: _ENV
  ;   locals: tbData(0-10), chapterId(0-10), chapterName(0-10), data(4-10)
  0000  GETTABUP  R3 = _ENV[K0('setmetatable')]
  0001  MOVE      R4 = R0
  0002  GETTABUP  R5 = _ENV[K1('TaskData')]
  0003  CALL      R3 = call(R3, 1 args, 2 rets)
  0004  SELF      R5 = R3[K2('Init')] (self)
  0005  MOVE      R6 = R0
  0006  MOVE      R7 = R0
  0007  CALL      R4 = call(R4, 0 args, 3 rets)
  0008  RETURN    return R3..R2
  0009  RETURN    return R0..R-1
; ---------- proto1 [Init] ----------
  ; fn ?  line 23-33 np=3 va=0 ms=9 code=19 consts=12 upvals=1 protos=0
  ;   K[0]='chapterId'
  ;   K[1]='chapterName'
  ;   K[2]='table'
  ;   K[3]='insert'
  ;   K[4]='Rewards'
  ;   K[5]=1
  ;   K[6]='PROPERTY_TYPE'
  ;   K[7]='EPropertyType'
  ;   K[8]='TaskProgress'
  ;   K[9]='PROPERTY_COUNT'
  ;   K[10]='RewardApi'
  ;   K[11]='CryptRewards'
  ;   upvals: _ENV
  ;   locals: self(0-19), chapterId(0-19), chapterName(0-19)
  0000  SETTABLE  R0[K0('chapterId')] = R1
  0001  SETTABLE  R0[K1('chapterName')] = R2
  0002  GETTABUP  R3 = _ENV[K2('table')]
  0003  GETTABLE  R3 = R3[K3('insert')]
  0004  GETTABLE  R4 = R0[K4('Rewards')]
  0005  LOADK     R5 = K5 1
  0006  NEWTABLE  R6 = {} (0 items)
  0007  GETTABUP  R7 = _ENV[K6('PROPERTY_TYPE')]
  0008  GETTABUP  R8 = _ENV[K7('EPropertyType')]
  0009  GETTABLE  R8 = R8[K8('TaskProgress')]
  0010  SETTABLE  R6[R7] = R8
  0011  GETTABUP  R7 = _ENV[K9('PROPERTY_COUNT')]
  0012  SETTABLE  R6[R7] = K5(1)
  0013  CALL      R3 = call(R3, 0 args, 3 rets)
  0014  GETTABUP  R3 = _ENV[K10('RewardApi')]
  0015  GETTABLE  R3 = R3[K11('CryptRewards')]
  0016  GETTABLE  R4 = R0[K4('Rewards')]
  0017  CALL      R3 = call(R3, 0 args, 1 rets)
  0018  RETURN    return R0..R-1
; ---------- proto2 [_GetFirstSlotId] ----------
  ; fn ?  line 35-44 np=1 va=0 ms=6 code=28 consts=10 upvals=1 protos=0
  ;   K[0]='SlotState'
  ;   K[1]=1
  ;   K[2]='Slot'
  ;   K[3]='Log'
  ;   K[4]='Assert'
  ;   K[5]=nil
  ;   K[6]='tostring'
  ;   K[7]='Id'
  ;   K[8]=' 任务缺少 title icon 配置!'
  ;   K[9]=''
  ;   upvals: _ENV
  ;   locals: self(0-28), slotId(1-28)
  0000  LOADNIL   R1..R1 = nil
  0001  GETTABLE  R2 = R0[K0('SlotState')]
  0002  TEST      if not R2 then   -> -131068
  0003  JMP       (jump)   -> 11
  0004  GETTABLE  R2 = R0[K0('SlotState')]
  0005  GETTABLE  R2 = R2[K1(1)]
  0006  TEST      if not R2 then   -> -131064
  0007  JMP       (jump)   -> 11
  0008  GETTABLE  R2 = R0[K0('SlotState')]
  0009  GETTABLE  R2 = R2[K1(1)]
  0010  GETTABLE  R1 = R2[K2('Slot')]
  0011  GETTABUP  R2 = _ENV[K3('Log')]
  0012  GETTABLE  R2 = R2[K4('Assert')]
  0013  EQ        if R0 eq K5(nil)   -> -130284
  0014  JMP       (jump)   -> 16
  0015  LOADBOOL  R3 = false
  0016  LOADBOOL  R3 = true
  0017  GETTABUP  R4 = _ENV[K6('tostring')]
  0018  GETTABLE  R5 = R0[K7('Id')]
  0019  CALL      R4 = call(R4, 1 args, 1 rets)
  0020  LOADK     R5 = K8 ' 任务缺少 title icon 配置!'
  0021  CONCAT    R4 = concat(R4..R4)
  0022  CALL      R2 = call(R2, 0 args, 2 rets)
  0023  TESTSET   if R1 then R2   -> -130534
  0024  JMP       (jump)   -> 26
  0025  LOADK     R2 = K9 ''
  0026  RETURN    return R2..R1
  0027  RETURN    return R0..R-1
; ---------- proto3 [_GetSlotIdsStr] ----------
  ; fn ?  line 46-60 np=1 va=0 ms=10 code=23 consts=5 upvals=1 protos=0
  ;   K[0]=''
  ;   K[1]='SlotState'
  ;   K[2]='ipairs'
  ;   K[3]='Slot'
  ;   K[4]=','
  ;   upvals: _ENV
  ;   locals: self(0-23), str(1-23), slotCount(7-23), (for generator)(10-21), (for state)(10-21), (for control)(10-21), index(11-19), changeData(11-19)
  0000  LOADK     R1 = K0 ''
  0001  GETTABLE  R2 = R0[K1('SlotState')]
  0002  TEST      if not R2 then   -> -131067
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R1..R0
  0005  GETTABLE  R2 = R0[K1('SlotState')]
  0006  LEN       R2 = len R0
  0007  GETTABUP  R3 = _ENV[K2('ipairs')]
  0008  GETTABLE  R4 = R0[K1('SlotState')]
  0009  CALL      R3 = call(R3, 3 args, 1 rets)
  0010  JMP       (jump)   -> 19
  0011  MOVE      R8 = R0
  0012  GETTABLE  R9 = R7[K3('Slot')]
  0013  CONCAT    R1 = concat(R1..R8)
  0014  LT        if R0 lt R2   -> -127982
  0015  JMP       (jump)   -> 19
  0016  MOVE      R8 = R0
  0017  LOADK     R9 = K4 ','
  0018  CONCAT    R1 = concat(R1..R8)
  0019  TFORCALL  tforcall R3
  0020  TFORLOOP  tforloop R5(sBx=-10)   -> 11
  0021  RETURN    return R1..R0
  0022  RETURN    return R0..R-1
