// CStoryTutorial - [2020-04-13 11:57:47]
#ifndef _CSTORYTUTORIAL_H_
#define _CSTORYTUTORIAL_H_

#include "common.h"

/*
001EC890 CStoryTutorial::Init(EStoryTutorial,bool,int)
001ECFBC CStoryTutorial::Shutdown()
001ECFC0 CStoryTutorial::Init(TPoint3D,float,bool)
001ED1D0 CStoryTutorial::ShutdownAnimations()
001ED20C CStoryTutorial::Process()
001ED404 CStoryTutorial::CheckKickLength(TPoint)
001ED4B8 CStoryTutorial::Render()
001ED874 CStoryTutorial::Render3D()

*/
// sizeof = 0xA0
struct ProcessInfoEx{
  TPoint3D    TPoint3D_0;
  int         i_C;     // 时间或者帧数
  int         i_10;    // 时间或者帧数
  int         i_14;    // 时间或者帧数
  int         i_18;
  int         unknown_1C;
  char        szFilePath_20[0x80];
};

// sizeof = 0x38
struct ProcessInfo{
  TPoint3D  TPoint3D_00;
  TPoint3D  TPoint3D_0C;
  bool      b_18;
  uint8     unknown_19;
  uint8     unknown_1A;
  uint8     unknown_1B;
  float     f_1C;
  bool      b_20;
  bool      b_21;
  uint8     unknown_22;
  uint8     unknown_23;
  int       i_24;          // 时间或者帧数,对比T34的_i_C+_i_10+_i_14切换用
  int       iIndexT34_28;
  bool      b_2C;
  bool      b_2D;
  bool      b_2E;
  uint8     unknown_2F;
  int       iCountT34_30;

  ProcessInfoEx*   listProcessInfoEx_34; 

  ProcessInfo(){
  };
};

enum EStoryTutorial {
  EStoryTutorial_0,
  EStoryTutorial_1,
  EStoryTutorial_2,
  EStoryTutorial_3,
  EStoryTutorial_4,
  EStoryTutorial_5,
  EStoryTutorial_6,
};

class CStoryTutorial {
public:
  void Init(EStoryTutorial, bool, int);  //001EC890
  void Shutdown();                       //001ECFBC
  void Init(TPoint3D, float, bool);      //001ECFC0
  void ShutdownAnimations();             //001ED1D0
  void Process();                        //001ED20C
  bool CheckKickLength(TPoint);          //001ED404
  void Render();                         //001ED4B8
  void Render3D();                       //001ED874

  ProcessInfo*          m_ProcessInfo_0;
  int                   m_iProcessCount_4;
  uint8                 m_i8_8;
  bool                  m_b_9;
  bool                  m_b_A; 
  bool                  m_b_B; 
  int                   m_i_C;

};

#endif  //_CSTORYTUTORIAL_H_