OpenBarnyard
 
Loading...
Searching...
No Matches
AFrontEndMainMenuState2.h
Go to the documentation of this file.
1#pragma once
2#include "ABYardMenuState.h"
4#include "GUI/AGUI2Button.h"
5#include "GUI/AFade.h"
6
8{
9public:
11
22
23 inline constexpr static TINT FRONTENDBUTTON_TEXTS[ FRONTENDBUTTON_NUMOF ] = {
24 292, 293, 294, 296, 298, 333
25 };
26
27public:
28 // constructors/destructor
29 AFrontEndMainMenuState2( AWindmillHelper* a_pWindmillHelper = TNULL, TBOOL a_bFlag = TFALSE );
31
33
34 // Sets camera to it's position it should have in front end
35 static void SetupCamera();
36
37 //-----------------------------------------------------------------------------
38 // AGameState
39 //-----------------------------------------------------------------------------
40 virtual TBOOL ProcessInput( const Toshi::TInputInterface::InputEvent* a_pInputEvent ) OVERRIDE;
41 virtual TBOOL ProcessCommand( AInputCommand a_eInputCommand, const Toshi::TInputInterface::InputEvent* a_pInputEvent, TBOOL& a_rStopEvents ) OVERRIDE;
42 virtual TBOOL OnUpdate( TFLOAT a_fDeltaTime ) OVERRIDE;
43 virtual void OnInsertion() OVERRIDE;
44 virtual void OnRemoval() OVERRIDE;
45 virtual void OnActivate() OVERRIDE;
46 virtual void OnDeactivate() OVERRIDE;
47
48 //-----------------------------------------------------------------------------
49 // ABYardMenuState
50 //-----------------------------------------------------------------------------
51 virtual void OnMenuItemActivated( AGUI2MenuItem& a_rMenuItem ) OVERRIDE;
52 virtual void OnMenuClose() OVERRIDE;
53
54private:
55 void UpdateMenuButtons( TFLOAT a_fDeltaTime );
56 void UpdateFocusedButton( TFLOAT a_fDeltaTime );
57
58public:
59 inline static TBOOL ms_bIsInserted = TFALSE;
60 inline static TFLOAT ms_fPlayIntroAFKTime = 30.0f;
61 inline static TFLOAT ms_fFocusedButtonMaxOffset = 3.0f;
62 inline static TFLOAT ms_fFocusedButtonMaxScale = 1.25f;
64 inline static TFLOAT ms_fFocusedButtonAnimSpeed = 20.0f;
65
66private:
68 TINT m_iActivatedButtonID;
69 AGUI2Rectangle m_Rectangle1;
70 AGUI2Rectangle m_Rectangle2;
71 Toshi::TGenericListener m_oUnkListener;
72 AWindmillHelper* m_pWindmillHelper;
73 TBOOL m_bFlag;
74 TFLOAT m_fAFKTime;
75 Toshi::TListener<AFade, TBOOL, AFrontEndMainMenuState2> m_oFadeOverListener;
76};
#define OVERRIDE
Definition Defines.h:12
#define TDECLARE_CLASS(THIS_CLASS, PARENT_CLASS)
Definition TObject.h:38
float TFLOAT
Definition Typedefs.h:4
#define TNULL
Definition Typedefs.h:23
int TINT
Definition Typedefs.h:7
#define TFALSE
Definition Typedefs.h:24
bool TBOOL
Definition Typedefs.h:6
AInputCommand
Definition AInputMap.h:12
virtual void OnInsertion() override
virtual void OnMenuItemActivated(AGUI2MenuItem &a_rMenuItem) override
virtual void OnDeactivate() override
virtual void OnMenuClose() override
AFrontEndMainMenuState2(AWindmillHelper *a_pWindmillHelper=nullptr, TBOOL a_bFlag=false)
virtual TBOOL OnUpdate(TFLOAT a_fDeltaTime) override
virtual TBOOL ProcessInput(const Toshi::TInputInterface::InputEvent *a_pInputEvent) override
virtual TBOOL ProcessCommand(AInputCommand a_eInputCommand, const Toshi::TInputInterface::InputEvent *a_pInputEvent, TBOOL &a_rStopEvents) override
static constexpr TINT FRONTENDBUTTON_TEXTS[FRONTENDBUTTON_NUMOF]
virtual void OnRemoval() override
virtual void OnActivate() override
Definition AFade.h:9