//CSideStoryProfile - [2020-04-13 11:57:47]
#ifndef _CSIDESTORYPROFILE_H_
#define _CSIDESTORYPROFILE_H_

#include "CFTTSerialize.h"
#include "CPlayer.h"
#include "CStoryProfileStages.h"
/*
001E1740 CSideStoryProfile::Init()
001E1744 CSideStoryProfile::SetDefaults()
001E17F4 CSideStoryProfile::ReInitialise(int)
001E180A CSideStoryProfile::Exit()
001E1820 CSideStoryProfile::Serialize(CFTTSerialize &)
001E1844 CSideStoryProfile::SetupSideStory()
001E1920 CSideStoryProfile::SetOppoTeams()
001E19F0 CSideStoryProfile::HaveNewSideStory()
001E1A28 CSideStoryProfile::GetNumOppoTeams()
001E1A38 CSideStoryProfile::SetupNextStage()
001E1B00 CSideStoryProfile::SetSeason(int)
001E1B10 CSideStoryProfile::GetOppoTeam(int,int,int,int)
001E1B40 CSideStoryProfile::ApplyUserPlayer(TPlayerInfo *)
001E3564 CSideStoryProfile::SetStageStars(int,int)
001E35A8 CSideStoryProfile::SetStageComplete(int,int,bool)
*/

class TSideStoryProfileData {
public:
  void Serialize(CFTTSerialize &);  //001E1608
  bool field_0;
  bool field_1;
  TPlayerInfoLight field_2;
  ushort field_14;
  ushort Seasonindex_16;
  ushort field_18;
  ushort ClubTeam_1a;
  ushort field_1C[38];
  uchar field_68;
  char field_69;
  ushort field_6A[75];
  uchar NumOppoTeams_100;
  char field_101;
  ushort field_102[10];
  uchar field_116;
  uchar field_117;
  wchar_t PlayerName_118[17];
  short field_13A[9];  //代码里只看到使用第一个short， 定义成9个是因为在IDA中看， 刚好补齐下内存布局。
};

class CSideStoryProfile {
public:
  void Init();                            //001E1740
  void SetDefaults();                     //001E1744
  void ReInitialise(int);                 //001E17F4
  void Exit();                            //001E180A
  void Serialize(CFTTSerialize &);        //001E1820
  void SetupSideStory();                  //001E1844
  void SetOppoTeams();                    //001E1920
  bool HaveNewSideStory();                //001E19F0
  void GetNumOppoTeams();                 //001E1A28
  int SetupNextStage();                  //001E1A38
  void SetSeason(int);                    //001E1B00
  int GetOppoTeam(int, int, int, int);   //001E1B10
  void ApplyUserPlayer(TPlayerInfo *);    //001E1B40
  void SetStageStars(int, int);           //001E3564
  void SetStageComplete(int, int, bool);  //001E35A8
public:
  CStoryProfileStages *filed_0;
  static TSideStoryProfileData m_tData;
};

#endif  //_CSIDESTORYPROFILE_H_