//////////////////////////////////////////////////////////////////////////////
//
// Asura_FlyCam.cpp
//
// Copyright (c) 2006 Rebellion. All rights reserved.
//
// Description:
//
//     Basic camera controlled by analogue sticks or buttons. Intended only
//     for debugging and prototyping purposes. 
//
//////////////////////////////////////////////////////////////////////////////

// I N C L U D E S ///////////////////////////////////////////////////////////

#include "Core/Asura.h"

#ifdef ASURA_SUPPORT_FLYCAM

// This file's header.
#include "Camera/Asura_FlyCam.h"

// Asura includes
#include "Input/Asura_PlatformInput.h"


////////////////////////////////////////////////////////////////////////////////
// Function     : Asura_FlyCam::Platform_Initialise
// Author       : Andy Tate
// Date         : 1-Oct-2007
////////////////////////////////////////////////////////////////////////////////

void Asura_FlyCam::Platform_Initialise(void)
{
	AddMoveForwardsBackwardsMapping	( ASURA_AXIS_PAD1_LSTICK_V );
	AddMoveForwardsBackwardsMapping	( ASURA_PS2_KEYID_PAD1_UP, ASURA_PS2_KEYID_PAD1_DOWN );
	AddMoveLeftRightMapping			( ASURA_AXIS_PAD1_LSTICK_H );
	AddMoveLeftRightMapping			( ASURA_PS2_KEYID_PAD1_LEFT, ASURA_PS2_KEYID_PAD1_RIGHT );
	AddMoveUpDownMapping			( ASURA_PS2_KEYID_PAD1_TRIANGLE, ASURA_PS2_KEYID_PAD1_CROSS );

	AddRollMapping					( ASURA_PS2_KEYID_PAD1_SQUARE, ASURA_PS2_KEYID_PAD1_CIRCLE );
	AddPitchMapping					( ASURA_AXIS_PAD1_RSTICK_V );
	AddYawMapping					( ASURA_AXIS_PAD1_RSTICK_H );

	AddFastMapping					( ASURA_PS2_KEYID_PAD1_L1 , ASURA_PS2_KEYID_PAD1_R1 );
	AddSlowMapping					( ASURA_PS2_KEYID_PAD1_L2 );
	AddSlowMapping					( ASURA_PS2_KEYID_PAD1_R2 );

	AddInvertYMapping				( ASURA_PS2_KEYID_PAD1_SELECT );

	AddResetRollMapping				( ASURA_PS2_KEYID_PAD1_L3 );
	AddResetRollMapping				( ASURA_PS2_KEYID_PAD1_R3 );
}

/// End of function 'Asura_FlyCam::Platform_Initialise'. ///



////////////////////////////////////////////////////////////////////////////////
// Function     : Asura_FlyCam::Platform_Shutdown
// Author       : Andy Tate
// Date         : 1-Oct-2007
////////////////////////////////////////////////////////////////////////////////

void Asura_FlyCam::Platform_Shutdown(void)
{
}

/// End of function 'Asura_FlyCam::Platform_Shutdown'. ///

#endif // #ifdef ASURA_SUPPORT_FLYCAM


/// End of file. ///
