// CFESEditPlayer - [2020-04-13 11:57:46]
#ifndef _CFESEDITPLAYER_H_
#define _CFESEDITPLAYER_H_

#include "common.h"
#include "render.h"
#include "CFEScreen.h"

/*
00128118 CFESEditPlayer::CFESEditPlayer()
001281FC CFESEditPlayer::~CFESEditPlayer()
00128200 CFESEditPlayer::~CFESEditPlayer()
00128210 CFESEditPlayer::Init()
00128374 CFESEditPlayer::RevertToProfile()
001283D8 CFESEditPlayer::SetupPlayer()
001284C0 CFESEditPlayer::SetupEditMode(int)
00128798 CFESEditPlayer::GetCustomiseTile(int)
00128904 CFESEditPlayer::SetUpdateMovement()
001289CC CFESEditPlayer::SetupHighlight()
00128A50 CFESEditPlayer::SetupEditMode_NAME()
00128A84 CFESEditPlayer::SetupEditMode_NUMBER()
00128C40 CFESEditPlayer::SetupEditMode_HAIRSTYLE()
00128DBC CFESEditPlayer::SetupEditMode_HAIRCOLOUR()
00128F08 CFESEditPlayer::SetupEditMode_FACIALHAIR()
0012907C CFESEditPlayer::SetupEditMode_SLEEVELENGTH()
00129198 CFESEditPlayer::SetupEditMode_BOOTS()
001292E0 CFESEditPlayer::ProcessEditMode(int)
00129358 CFESEditPlayer::ProcessEditMode_NAME()
0012944C CFESEditPlayer::ProcessEditMode_NUMBER()
0012944E CFESEditPlayer::ProcessEditMode_HAIRSTYLE()
0012946E CFESEditPlayer::ProcessEditMode_HAIRCOLOUR()
0012948E CFESEditPlayer::ProcessEditMode_FACIALHAIR()
001294AE CFESEditPlayer::ProcessEditMode_SLEEVELENGTH()
001294B0 CFESEditPlayer::ProcessEditMode_BOOTS()
00129504 CFESEditPlayer::ShowKeyboard(int,void *)
00129514 CFESEditPlayer::ApplyToProfile()
00129658 CFESEditPlayer::Exit()
001296D8 CFESEditPlayer::ProcessPlayer()
001297B8 CFESEditPlayer::HaveEasterEggName(wchar_t *)
00129860 CFESEditPlayer::UpdatePosition()
00129944 CFESEditPlayer::ConfirmUnlockCB(int,void *)
001299A4 CFESEditPlayer::HaveEnoughCredits()
001299C0 CFESEditPlayer::CompleteUnlock()
00129A5C CFESEditPlayer::CancelChanges()
00129A6C CFESEditPlayer::Process()
00129C54 CFESEditPlayer::CheckUnlocked(int,int)
00129CD0 CFESEditPlayer::RenderLines()
00129EC4 CFESEditPlayer::Render2D()
00129ECC CFESEditPlayer::SetupCamera(bool)
0012A0A0 CFESEditPlayer::PreRender3D()
0012A1DC CFESEditPlayer::Render3D()
0012A1F4 CFESEditPlayer::RenderScene(EGfxRenderPass)
0012A314 CFESEditPlayer::Render2DHUD()

*/

class CFESEditPlayer : public CFEScreen {
public:
  CFESEditPlayer();            // 00128118
  virtual ~CFESEditPlayer();   // 001281FC 00128200
  virtual void Init();         // 00128210
  virtual void Exit();         // 00129658
  virtual void Process();      // 00129A6C
  virtual void Render2D();     // 00129EC4
  virtual void PreRender3D();  // 0012A0A0
  virtual void Render3D();     // 0012A1DC
  virtual void Render2DHUD();  // 0012A314

  void RevertToProfile();               // 00128374
  void SetupPlayer();                   // 001283D8
  void SetupEditMode(int);              // 001284C0
  void GetCustomiseTile(int);           // 00128798
  void SetUpdateMovement();             // 00128904
  void SetupHighlight();                // 001289CC
  void SetupEditMode_NAME();            // 00128A50
  void SetupEditMode_NUMBER();          // 00128A84
  void SetupEditMode_HAIRSTYLE();       // 00128C40
  void SetupEditMode_HAIRCOLOUR();      // 00128DBC
  void SetupEditMode_FACIALHAIR();      // 00128F08
  void SetupEditMode_SLEEVELENGTH();    // 0012907C
  void SetupEditMode_BOOTS();           // 00129198
  void ProcessEditMode(int);            // 001292E0
  void ProcessEditMode_NAME();          // 00129358
  void ProcessEditMode_NUMBER();        // 0012944C
  void ProcessEditMode_HAIRSTYLE();     // 0012944E
  void ProcessEditMode_HAIRCOLOUR();    // 0012946E
  void ProcessEditMode_FACIALHAIR();    // 0012948E
  void ProcessEditMode_SLEEVELENGTH();  // 001294AE
  void ProcessEditMode_BOOTS();         // 001294B0
  void ShowKeyboard(int, void *);       // 00129504
  void ApplyToProfile();                // 00129514

  void ProcessPlayer();               // 001296D8
  void HaveEasterEggName(wchar_t *);  // 001297B8
  void UpdatePosition();              // 00129860
  void ConfirmUnlockCB(int, void *);  // 00129944
  void HaveEnoughCredits();           // 001299A4
  void CompleteUnlock();              // 001299C0
  static void CancelChanges();        // 00129A5C

  void CheckUnlocked(int, int);  // 00129C54
  void RenderLines();            // 00129CD0

  void SetupCamera(bool);            // 00129ECC
  void RenderScene(EGfxRenderPass);  // 0012A1F4

  static bool ms_bCancelChanges;  // 003507BC
};

#endif  //_CFESEDITPLAYER_H_