#pragma once

#include "Net_Move.h"

class NetCli_MoveChild : public Net_Move
{
public:
	static bool _Init();
	static bool _Release();

	virtual	void AddToPartition     ( int GItemID , int LGItemID , int DBID , RolePosStruct* Pos , PlayerGraphStruct* GraphObj );
	virtual	void DelFromPartition   ( int GItemID  );
	virtual	void SetPos             ( int GItemID  , RolePosStruct* Pos );
	virtual	void ObjectMove         ( int GItemID  , RolePosStruct* Pos , float vX , float vZ , ClientMoveTypeENUM Type );

	virtual	void DoAction           ( int GItemID  , int ActionID , int TempActionID );

	virtual	void MoveSpeed          ( int GItemID  , float Speed );
	virtual	void ModelRate          ( int GItemID  , float ModelRate );

	virtual void EQInfo             ( int GItemID , LookEQInfoStruct&    EQLook );
	virtual void FixEQInfo          ( int GItemID , EQWearPosENUM  Pos , int EQ );
	virtual void LookFace           ( int GItemID , LookStruct& Look );
	virtual void ClientAutoPlot     ( int GItemID , char* AutoPlot );
	//¨¤¦â¦æ¬°ª¬ºA
	virtual void ActionType         ( int GItemID , RoleActionStruct	Action );

	virtual void R_JumpBegin		( int GItemID , float X , float Y , float Z , float Dir , float vX , float vY , float vZ );
	//  virtual void R_JumpEnd( int GItemID , float X , float Y , float Z , float Dir ) = 0;
	virtual void R_Relation			( int GItemID , RoleRelationENUM   Relation );
	virtual void R_PartyMemberMove	( int DBID , int ZoneID , float X , float Y , float Z );
	virtual void PlayMotion			( int iObjID, const char* pszMotion );
};