// GL - [2020-06-22 11:41:46]
#ifndef _GL_H_
#define _GL_H_

#include "CPlayer.h"

enum EKickType {
  EKickType_0,
  EKickType_1,
  EKickType_2,
  EKickType_3,
  EKickType_4,
  EKickType_5,
  EKickType_6,
  EKickType_7,
  EKickType_8,
  EKickType_9,
  EKickType_10,
};

enum EPlayModeStep {
  EPlayModeStep_0,
  EPlayModeStep_1,
  EPlayModeStep_2,
  EPlayModeStep_3,
  EPlayModeStep_4,
  EPlayModeStep_5,
  EPlayModeStep_6,
  EPlayModeStep_7,
};

enum EPlayMode {
  EPlayMode_0,
  EPlayMode_1,
  EPlayMode_2,
  EPlayMode_3,
  EPlayMode_4,
  EPlayMode_5,
  EPlayMode_6,
  EPlayMode_7,
};

enum EPlayModeState {
  EPlayModeState_0,
  EPlayModeState_1,
  EPlayModeState_2,
  EPlayModeState_3,
  EPlayModeState_4,
  EPlayModeState_5,
  EPlayModeState_6,
  EPlayModeState_7,
};

//0015B944
void GL_OffsideUpdate();

//0015BA58
void GL_OffsideTrigger(int);

//0015BBBC
void GL_OffsideCheckKick(int, int);

//0015BC10
void GL_OffsideReset();

//0015BC80
void GL_OffsideSetup(int);

//0015BE4C
void GL_CalculateBackLine();

//0016DE9C
void GL_SetTouch(int, int, bool, EKickType, char const*);

//00175E58
void GL_IdleProcess();

//00175F20
void GL_ResetPlayers();

//00175F68
void GL_GameLogicProcess();

//00175FAC
void GL_NewPlayModeStep(EPlayModeStep);

//00175FC4
void GL_SetupNewPlayMode(EPlayMode);

//00176040
int GL_NewPlayMode(EPlayMode, int, bool);

//00176070
void GL_NewPlayModeState(EPlayModeState);

//001760B8
void GL_UpdatePlayMode();

#endif  //_GL_H_