//////////////////////////////////////////////////////////////////////////////
//
// AVP_Behaviour_Predator_TestBehaviour.h
//
// Copyright (C) 2008 Rebellion. All Rights Reserved.
//
//////////////////////////////////////////////////////////////////////////////

// B E G I N   F I L E   W R A P P E R ///////////////////////////////////////

#ifdef ASURA_USE_PRAGMA_ONCE
#pragma once
#endif

#ifndef __AVP_BEHAVIOUR_PREDATOR_TESTBEHAVIOUR_H__
#define __AVP_BEHAVIOUR_PREDATOR_TESTBEHAVIOUR_H__ 1

// E N D   F I L E   W R A P P E R ///////////////////////////////////////////

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

// asura
#include "Network/Asura_Guid.h"

// avp axon
#include "Behaviour/Axon_Project_Behaviour.h"

// F O R W A R D   D E C L A R A T I O N S ///////////////////////////////////

class AVP_Brain_Actor_Predator;

//////////////////////////////////////////////////////////////////////////////
//
// AVP_Behaviour_Predator_Test
//
//////////////////////////////////////////////////////////////////////////////

class AVP_Behaviour_Predator_TestBehaviour : public Axon_Project_Behaviour
{
	typedef Axon_Project_Behaviour PARENT;

public:
	AVP_Behaviour_Predator_TestBehaviour( AVP_Brain_Actor_Predator* pxBrain );

	AVP_Brain_Actor_Predator*			GetPredatorBrain		(void)							{return m_pxPredatorBrain;}

#ifndef ASURA_NO_DEBUG_OUTPUT
	void RenderDebugInfo();
#endif
protected:
	virtual void PerFrameUpdate( const float fTimeslice );

private:
	AVP_Brain_Actor_Predator* m_pxPredatorBrain;
	float m_fMoveDirCurrent;

	float m_fCloakTimer;

#if defined(ASURA_SUPPORT_COMMAND_CONSOLE)
	static u_int s_uConsoleVarReferenceCount;
#endif
};

//////////////////////////////////////////////////////////////////////////////
//
// 
//
//////////////////////////////////////////////////////////////////////////////

#endif //__AVP_BEHAVIOUR_PREDATOR_TESTBEHAVIOUR_H__
