#ifndef _NOB12_H_ #define _NOB12_H_ #include class KFT_ani_event { public: KFT_ani_event() { m_pObj = NULL; m_pMem_event_type = NULL; m_pMem_event_detail = NULL; m_pMem_event_time = NULL; m_pMem_event_file_name = NULL; m_pMem_event_direction = NULL; m_pMem_event_property = NULL; } KFT_ani_event( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "ani_event" ); m_pMem_event_type = reinterpret_cast(m_pObj->GetMemberObject( "event_type" )); m_pMem_event_detail = reinterpret_cast(m_pObj->GetMemberObject( "event_detail" )); m_pMem_event_time = reinterpret_cast(m_pObj->GetMemberObject( "event_time" )); m_pMem_event_file_name = reinterpret_cast(m_pObj->GetMemberObject( "event_file_name" )); m_pMem_event_direction = reinterpret_cast(m_pObj->GetMemberObject( "event_direction" )); m_pMem_event_property = reinterpret_cast(m_pObj->GetMemberObject( "event_property" )); } KFT_ani_event( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_event_type = reinterpret_cast(m_pObj->GetMemberObject( "event_type" )); m_pMem_event_detail = reinterpret_cast(m_pObj->GetMemberObject( "event_detail" )); m_pMem_event_time = reinterpret_cast(m_pObj->GetMemberObject( "event_time" )); m_pMem_event_file_name = reinterpret_cast(m_pObj->GetMemberObject( "event_file_name" )); m_pMem_event_direction = reinterpret_cast(m_pObj->GetMemberObject( "event_direction" )); m_pMem_event_property = reinterpret_cast(m_pObj->GetMemberObject( "event_property" )); } ~KFT_ani_event() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_event_type = reinterpret_cast(m_pObj->GetMemberObject( "event_type" )); m_pMem_event_detail = reinterpret_cast(m_pObj->GetMemberObject( "event_detail" )); m_pMem_event_time = reinterpret_cast(m_pObj->GetMemberObject( "event_time" )); m_pMem_event_file_name = reinterpret_cast(m_pObj->GetMemberObject( "event_file_name" )); m_pMem_event_direction = reinterpret_cast(m_pObj->GetMemberObject( "event_direction" )); m_pMem_event_property = reinterpret_cast(m_pObj->GetMemberObject( "event_property" )); } unsigned long GetValue_event_type() { unsigned long res; m_pMem_event_type->GetDWORD( &res ); return res; } void SetValue_event_type( unsigned long value ) { m_pMem_event_type->SetDWORD( value ); } unsigned long GetValue_event_detail() { unsigned long res; m_pMem_event_detail->GetDWORD( &res ); return res; } void SetValue_event_detail( unsigned long value ) { m_pMem_event_detail->SetDWORD( value ); } unsigned long GetValue_event_time() { unsigned long res; m_pMem_event_time->GetDWORD( &res ); return res; } void SetValue_event_time( unsigned long value ) { m_pMem_event_time->SetDWORD( value ); } bool GetString_event_file_name( char *data, int &nLen ) { return m_pMem_event_file_name->GetString( data, nLen ); } bool SetString_event_file_name( const char *data, int nLen ) { return m_pMem_event_file_name->SetString( data, nLen ); } unsigned long GetValue_event_direction() { unsigned long res; m_pMem_event_direction->GetDWORD( &res ); return res; } void SetValue_event_direction( unsigned long value ) { m_pMem_event_direction->SetDWORD( value ); } unsigned long GetValue_event_property() { unsigned long res; m_pMem_event_property->GetDWORD( &res ); return res; } void SetValue_event_property( unsigned long value ) { m_pMem_event_property->SetDWORD( value ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "ani_event" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_event_type; KSimpleDataObject* m_pMem_event_detail; KSimpleDataObject* m_pMem_event_time; KSimpleDataObject* m_pMem_event_file_name; KSimpleDataObject* m_pMem_event_direction; KSimpleDataObject* m_pMem_event_property; }; class KFTA_ani_event { public: KFTA_ani_event() { m_pObj = NULL; m_pParent = NULL; } KFTA_ani_event( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_ani_event( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "ani_event" ); } ~KFTA_ani_event() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_ani_event &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_ani_event_list { public: KFT_ani_event_list() { m_pObj = NULL; m_pMem_ani_name = NULL; m_pMem_event_list_size = NULL; m_pMem_event_list = NULL; } KFT_ani_event_list( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "ani_event_list" ); m_pMem_ani_name = reinterpret_cast(m_pObj->GetMemberObject( "ani_name" )); m_pMem_event_list_size = reinterpret_cast(m_pObj->GetMemberObject( "event_list_size" )); m_pMem_event_list = reinterpret_cast(m_pObj->GetMemberObject( "event_list" )); } KFT_ani_event_list( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_ani_name = reinterpret_cast(m_pObj->GetMemberObject( "ani_name" )); m_pMem_event_list_size = reinterpret_cast(m_pObj->GetMemberObject( "event_list_size" )); m_pMem_event_list = reinterpret_cast(m_pObj->GetMemberObject( "event_list" )); } ~KFT_ani_event_list() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_ani_name = reinterpret_cast(m_pObj->GetMemberObject( "ani_name" )); m_pMem_event_list_size = reinterpret_cast(m_pObj->GetMemberObject( "event_list_size" )); m_pMem_event_list = reinterpret_cast(m_pObj->GetMemberObject( "event_list" )); } bool GetString_ani_name( char *data, int &nLen ) { return m_pMem_ani_name->GetString( data, nLen ); } bool SetString_ani_name( const char *data, int nLen ) { return m_pMem_ani_name->SetString( data, nLen ); } unsigned long GetValue_event_list_size() { unsigned long res; m_pMem_event_list_size->GetDWORD( &res ); return res; } void SetValue_event_list_size( unsigned long value ) { m_pMem_event_list_size->SetDWORD( value ); } void GetMemberTemplateArray_event_list( KFTA_ani_event &obj ) { obj.SetData( m_pMem_event_list ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "ani_event_list" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_ani_name; KSimpleDataObject* m_pMem_event_list_size; KTemplateDataArrayObject* m_pMem_event_list; }; class KFTA_ani_event_list { public: KFTA_ani_event_list() { m_pObj = NULL; m_pParent = NULL; } KFTA_ani_event_list( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_ani_event_list( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "ani_event_list" ); } ~KFTA_ani_event_list() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_ani_event_list &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_cob_mesh_part_list { public: KFT_cob_mesh_part_list() { m_pObj = NULL; m_pMem_mesh_part_num = NULL; m_pMem_mesh_part_size = NULL; m_pMem_mesh_part_list = NULL; } KFT_cob_mesh_part_list( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "cob_mesh_part_list" ); m_pMem_mesh_part_num = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_num" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); } KFT_cob_mesh_part_list( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_mesh_part_num = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_num" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); } ~KFT_cob_mesh_part_list() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_mesh_part_num = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_num" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); } unsigned long GetValue_mesh_part_num() { unsigned long res; m_pMem_mesh_part_num->GetDWORD( &res ); return res; } void SetValue_mesh_part_num( unsigned long value ) { m_pMem_mesh_part_num->SetDWORD( value ); } unsigned long GetValue_mesh_part_size() { unsigned long res; m_pMem_mesh_part_size->GetDWORD( &res ); return res; } void SetValue_mesh_part_size( unsigned long value ) { m_pMem_mesh_part_size->SetDWORD( value ); } int GetArrayCount_mesh_part_list() { return m_pMem_mesh_part_list->GetDataCount(); } const char *GetArrayString_mesh_part_list( int index ) { return m_pMem_mesh_part_list->GetDataString( index ); } void RefreshArray_mesh_part_list() { m_pMem_mesh_part_list->RefreshArray(); } bool SetArrayString_mesh_part_list( int index, const char *data ) { return m_pMem_mesh_part_list->SetDataString( index, data ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "cob_mesh_part_list" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_mesh_part_num; KSimpleDataObject* m_pMem_mesh_part_size; KSimpleDataArrayObject* m_pMem_mesh_part_list; }; class KFTA_cob_mesh_part_list { public: KFTA_cob_mesh_part_list() { m_pObj = NULL; m_pParent = NULL; } KFTA_cob_mesh_part_list( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_cob_mesh_part_list( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "cob_mesh_part_list" ); } ~KFTA_cob_mesh_part_list() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_cob_mesh_part_list &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_cob_header_v10 { public: KFT_cob_header_v10() { m_pObj = NULL; m_pMem_obj_partindex = NULL; m_pMem_obj_clan = NULL; m_pMem_obj_sex = NULL; m_pMem_mesh_part_size = NULL; m_pMem_mesh_part_list = NULL; m_pMem_ani_list_size = NULL; m_pMem_ani_list = NULL; m_pMem_ani_event_size = NULL; m_pMem_ani_event_list = NULL; } KFT_cob_header_v10( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "cob_header_v10" ); m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } KFT_cob_header_v10( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } ~KFT_cob_header_v10() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } unsigned long GetValue_obj_partindex() { unsigned long res; m_pMem_obj_partindex->GetDWORD( &res ); return res; } void SetValue_obj_partindex( unsigned long value ) { m_pMem_obj_partindex->SetDWORD( value ); } unsigned long GetValue_obj_clan() { unsigned long res; m_pMem_obj_clan->GetDWORD( &res ); return res; } void SetValue_obj_clan( unsigned long value ) { m_pMem_obj_clan->SetDWORD( value ); } unsigned long GetValue_obj_sex() { unsigned long res; m_pMem_obj_sex->GetDWORD( &res ); return res; } void SetValue_obj_sex( unsigned long value ) { m_pMem_obj_sex->SetDWORD( value ); } unsigned long GetValue_mesh_part_size() { unsigned long res; m_pMem_mesh_part_size->GetDWORD( &res ); return res; } void SetValue_mesh_part_size( unsigned long value ) { m_pMem_mesh_part_size->SetDWORD( value ); } void GetMemberTemplateArray_mesh_part_list( KFTA_cob_mesh_part_list &obj ) { obj.SetData( m_pMem_mesh_part_list ); } unsigned long GetValue_ani_list_size() { unsigned long res; m_pMem_ani_list_size->GetDWORD( &res ); return res; } void SetValue_ani_list_size( unsigned long value ) { m_pMem_ani_list_size->SetDWORD( value ); } int GetArrayCount_ani_list() { return m_pMem_ani_list->GetDataCount(); } const char *GetArrayString_ani_list( int index ) { return m_pMem_ani_list->GetDataString( index ); } void RefreshArray_ani_list() { m_pMem_ani_list->RefreshArray(); } bool SetArrayString_ani_list( int index, const char *data ) { return m_pMem_ani_list->SetDataString( index, data ); } unsigned long GetValue_ani_event_size() { unsigned long res; m_pMem_ani_event_size->GetDWORD( &res ); return res; } void SetValue_ani_event_size( unsigned long value ) { m_pMem_ani_event_size->SetDWORD( value ); } void GetMemberTemplateArray_ani_event_list( KFTA_ani_event_list &obj ) { obj.SetData( m_pMem_ani_event_list ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "cob_header_v10" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_obj_partindex; KSimpleDataObject* m_pMem_obj_clan; KSimpleDataObject* m_pMem_obj_sex; KSimpleDataObject* m_pMem_mesh_part_size; KTemplateDataArrayObject* m_pMem_mesh_part_list; KSimpleDataObject* m_pMem_ani_list_size; KSimpleDataArrayObject* m_pMem_ani_list; KSimpleDataObject* m_pMem_ani_event_size; KTemplateDataArrayObject* m_pMem_ani_event_list; }; class KFTA_cob_header_v10 { public: KFTA_cob_header_v10() { m_pObj = NULL; m_pParent = NULL; } KFTA_cob_header_v10( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_cob_header_v10( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "cob_header_v10" ); } ~KFTA_cob_header_v10() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_cob_header_v10 &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_effect_pos { public: KFT_effect_pos() { m_pObj = NULL; m_pMem_nIndex = NULL; m_pMem_effect_pos_name = NULL; } KFT_effect_pos( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "effect_pos" ); m_pMem_nIndex = reinterpret_cast(m_pObj->GetMemberObject( "nIndex" )); m_pMem_effect_pos_name = reinterpret_cast(m_pObj->GetMemberObject( "effect_pos_name" )); } KFT_effect_pos( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_nIndex = reinterpret_cast(m_pObj->GetMemberObject( "nIndex" )); m_pMem_effect_pos_name = reinterpret_cast(m_pObj->GetMemberObject( "effect_pos_name" )); } ~KFT_effect_pos() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_nIndex = reinterpret_cast(m_pObj->GetMemberObject( "nIndex" )); m_pMem_effect_pos_name = reinterpret_cast(m_pObj->GetMemberObject( "effect_pos_name" )); } unsigned long GetValue_nIndex() { unsigned long res; m_pMem_nIndex->GetDWORD( &res ); return res; } void SetValue_nIndex( unsigned long value ) { m_pMem_nIndex->SetDWORD( value ); } bool GetString_effect_pos_name( char *data, int &nLen ) { return m_pMem_effect_pos_name->GetString( data, nLen ); } bool SetString_effect_pos_name( const char *data, int nLen ) { return m_pMem_effect_pos_name->SetString( data, nLen ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "effect_pos" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_nIndex; KSimpleDataObject* m_pMem_effect_pos_name; }; class KFTA_effect_pos { public: KFTA_effect_pos() { m_pObj = NULL; m_pParent = NULL; } KFTA_effect_pos( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_effect_pos( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "effect_pos" ); } ~KFTA_effect_pos() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_effect_pos &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_lod_data { public: KFT_lod_data() { m_pObj = NULL; m_pMem_nLevel = NULL; m_pMem_lod_name = NULL; } KFT_lod_data( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "lod_data" ); m_pMem_nLevel = reinterpret_cast(m_pObj->GetMemberObject( "nLevel" )); m_pMem_lod_name = reinterpret_cast(m_pObj->GetMemberObject( "lod_name" )); } KFT_lod_data( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_nLevel = reinterpret_cast(m_pObj->GetMemberObject( "nLevel" )); m_pMem_lod_name = reinterpret_cast(m_pObj->GetMemberObject( "lod_name" )); } ~KFT_lod_data() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_nLevel = reinterpret_cast(m_pObj->GetMemberObject( "nLevel" )); m_pMem_lod_name = reinterpret_cast(m_pObj->GetMemberObject( "lod_name" )); } unsigned long GetValue_nLevel() { unsigned long res; m_pMem_nLevel->GetDWORD( &res ); return res; } void SetValue_nLevel( unsigned long value ) { m_pMem_nLevel->SetDWORD( value ); } bool GetString_lod_name( char *data, int &nLen ) { return m_pMem_lod_name->GetString( data, nLen ); } bool SetString_lod_name( const char *data, int nLen ) { return m_pMem_lod_name->SetString( data, nLen ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "lod_data" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_nLevel; KSimpleDataObject* m_pMem_lod_name; }; class KFTA_lod_data { public: KFTA_lod_data() { m_pObj = NULL; m_pParent = NULL; } KFTA_lod_data( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_lod_data( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "lod_data" ); } ~KFTA_lod_data() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_lod_data &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_cob_header_v11 { public: KFT_cob_header_v11() { m_pObj = NULL; m_pMem_obj_partindex = NULL; m_pMem_obj_clan = NULL; m_pMem_obj_sex = NULL; m_pMem_render_type = NULL; m_pMem_prop_category = NULL; m_pMem_shadow_type = NULL; m_pMem_sel_cube = NULL; m_pMem_dead_cube = NULL; m_pMem_visible_cube = NULL; m_pMem_collide_cube = NULL; m_pMem_effpos_list_size = NULL; m_pMem_effpos_list = NULL; m_pMem_lod_list_size = NULL; m_pMem_lod_list = NULL; m_pMem_height_file_name = NULL; m_pMem_mesh_list_size = NULL; m_pMem_mesh_list = NULL; m_pMem_mesh_part_size = NULL; m_pMem_mesh_part_list = NULL; m_pMem_ani_list_size = NULL; m_pMem_ani_list = NULL; m_pMem_ani_event_size = NULL; m_pMem_ani_event_list = NULL; } KFT_cob_header_v11( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "cob_header_v11" ); m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_render_type = reinterpret_cast(m_pObj->GetMemberObject( "render_type" )); m_pMem_prop_category = reinterpret_cast(m_pObj->GetMemberObject( "prop_category" )); m_pMem_shadow_type = reinterpret_cast(m_pObj->GetMemberObject( "shadow_type" )); m_pMem_sel_cube = reinterpret_cast(m_pObj->GetMemberObject( "sel_cube" )); m_pMem_dead_cube = reinterpret_cast(m_pObj->GetMemberObject( "dead_cube" )); m_pMem_visible_cube = reinterpret_cast(m_pObj->GetMemberObject( "visible_cube" )); m_pMem_collide_cube = reinterpret_cast(m_pObj->GetMemberObject( "collide_cube" )); m_pMem_effpos_list_size = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list_size" )); m_pMem_effpos_list = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list" )); m_pMem_lod_list_size = reinterpret_cast(m_pObj->GetMemberObject( "lod_list_size" )); m_pMem_lod_list = reinterpret_cast(m_pObj->GetMemberObject( "lod_list" )); m_pMem_height_file_name = reinterpret_cast(m_pObj->GetMemberObject( "height_file_name" )); m_pMem_mesh_list_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list_size" )); m_pMem_mesh_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } KFT_cob_header_v11( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_render_type = reinterpret_cast(m_pObj->GetMemberObject( "render_type" )); m_pMem_prop_category = reinterpret_cast(m_pObj->GetMemberObject( "prop_category" )); m_pMem_shadow_type = reinterpret_cast(m_pObj->GetMemberObject( "shadow_type" )); m_pMem_sel_cube = reinterpret_cast(m_pObj->GetMemberObject( "sel_cube" )); m_pMem_dead_cube = reinterpret_cast(m_pObj->GetMemberObject( "dead_cube" )); m_pMem_visible_cube = reinterpret_cast(m_pObj->GetMemberObject( "visible_cube" )); m_pMem_collide_cube = reinterpret_cast(m_pObj->GetMemberObject( "collide_cube" )); m_pMem_effpos_list_size = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list_size" )); m_pMem_effpos_list = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list" )); m_pMem_lod_list_size = reinterpret_cast(m_pObj->GetMemberObject( "lod_list_size" )); m_pMem_lod_list = reinterpret_cast(m_pObj->GetMemberObject( "lod_list" )); m_pMem_height_file_name = reinterpret_cast(m_pObj->GetMemberObject( "height_file_name" )); m_pMem_mesh_list_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list_size" )); m_pMem_mesh_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } ~KFT_cob_header_v11() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_render_type = reinterpret_cast(m_pObj->GetMemberObject( "render_type" )); m_pMem_prop_category = reinterpret_cast(m_pObj->GetMemberObject( "prop_category" )); m_pMem_shadow_type = reinterpret_cast(m_pObj->GetMemberObject( "shadow_type" )); m_pMem_sel_cube = reinterpret_cast(m_pObj->GetMemberObject( "sel_cube" )); m_pMem_dead_cube = reinterpret_cast(m_pObj->GetMemberObject( "dead_cube" )); m_pMem_visible_cube = reinterpret_cast(m_pObj->GetMemberObject( "visible_cube" )); m_pMem_collide_cube = reinterpret_cast(m_pObj->GetMemberObject( "collide_cube" )); m_pMem_effpos_list_size = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list_size" )); m_pMem_effpos_list = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list" )); m_pMem_lod_list_size = reinterpret_cast(m_pObj->GetMemberObject( "lod_list_size" )); m_pMem_lod_list = reinterpret_cast(m_pObj->GetMemberObject( "lod_list" )); m_pMem_height_file_name = reinterpret_cast(m_pObj->GetMemberObject( "height_file_name" )); m_pMem_mesh_list_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list_size" )); m_pMem_mesh_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } unsigned long GetValue_obj_partindex() { unsigned long res; m_pMem_obj_partindex->GetDWORD( &res ); return res; } void SetValue_obj_partindex( unsigned long value ) { m_pMem_obj_partindex->SetDWORD( value ); } unsigned long GetValue_obj_clan() { unsigned long res; m_pMem_obj_clan->GetDWORD( &res ); return res; } void SetValue_obj_clan( unsigned long value ) { m_pMem_obj_clan->SetDWORD( value ); } unsigned long GetValue_obj_sex() { unsigned long res; m_pMem_obj_sex->GetDWORD( &res ); return res; } void SetValue_obj_sex( unsigned long value ) { m_pMem_obj_sex->SetDWORD( value ); } unsigned long GetValue_render_type() { unsigned long res; m_pMem_render_type->GetDWORD( &res ); return res; } void SetValue_render_type( unsigned long value ) { m_pMem_render_type->SetDWORD( value ); } unsigned long GetValue_prop_category() { unsigned long res; m_pMem_prop_category->GetDWORD( &res ); return res; } void SetValue_prop_category( unsigned long value ) { m_pMem_prop_category->SetDWORD( value ); } unsigned long GetValue_shadow_type() { unsigned long res; m_pMem_shadow_type->GetDWORD( &res ); return res; } void SetValue_shadow_type( unsigned long value ) { m_pMem_shadow_type->SetDWORD( value ); } int GetArrayCount_sel_cube() { return m_pMem_sel_cube->GetDataCount(); } void GetArrayValue_sel_cube( int index, float *data, size_t data_size, int count ) { m_pMem_sel_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_sel_cube() { m_pMem_sel_cube->RefreshArray(); } void SetArrayValue_sel_cube( int index, const float *data, int count = 1 ) { m_pMem_sel_cube->SetDataFloat( index, data, count ); } int GetArrayCount_dead_cube() { return m_pMem_dead_cube->GetDataCount(); } void GetArrayValue_dead_cube( int index, float *data, size_t data_size, int count ) { m_pMem_dead_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_dead_cube() { m_pMem_dead_cube->RefreshArray(); } void SetArrayValue_dead_cube( int index, const float *data, int count = 1 ) { m_pMem_dead_cube->SetDataFloat( index, data, count ); } int GetArrayCount_visible_cube() { return m_pMem_visible_cube->GetDataCount(); } void GetArrayValue_visible_cube( int index, float *data, size_t data_size, int count ) { m_pMem_visible_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_visible_cube() { m_pMem_visible_cube->RefreshArray(); } void SetArrayValue_visible_cube( int index, const float *data, int count = 1 ) { m_pMem_visible_cube->SetDataFloat( index, data, count ); } int GetArrayCount_collide_cube() { return m_pMem_collide_cube->GetDataCount(); } void GetArrayValue_collide_cube( int index, float *data, size_t data_size, int count ) { m_pMem_collide_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_collide_cube() { m_pMem_collide_cube->RefreshArray(); } void SetArrayValue_collide_cube( int index, const float *data, int count = 1 ) { m_pMem_collide_cube->SetDataFloat( index, data, count ); } unsigned long GetValue_effpos_list_size() { unsigned long res; m_pMem_effpos_list_size->GetDWORD( &res ); return res; } void SetValue_effpos_list_size( unsigned long value ) { m_pMem_effpos_list_size->SetDWORD( value ); } void GetMemberTemplateArray_effpos_list( KFTA_effect_pos &obj ) { obj.SetData( m_pMem_effpos_list ); } unsigned long GetValue_lod_list_size() { unsigned long res; m_pMem_lod_list_size->GetDWORD( &res ); return res; } void SetValue_lod_list_size( unsigned long value ) { m_pMem_lod_list_size->SetDWORD( value ); } void GetMemberTemplateArray_lod_list( KFTA_lod_data &obj ) { obj.SetData( m_pMem_lod_list ); } bool GetString_height_file_name( char *data, int &nLen ) { return m_pMem_height_file_name->GetString( data, nLen ); } bool SetString_height_file_name( const char *data, int nLen ) { return m_pMem_height_file_name->SetString( data, nLen ); } unsigned long GetValue_mesh_list_size() { unsigned long res; m_pMem_mesh_list_size->GetDWORD( &res ); return res; } void SetValue_mesh_list_size( unsigned long value ) { m_pMem_mesh_list_size->SetDWORD( value ); } int GetArrayCount_mesh_list() { return m_pMem_mesh_list->GetDataCount(); } const char *GetArrayString_mesh_list( int index ) { return m_pMem_mesh_list->GetDataString( index ); } void RefreshArray_mesh_list() { m_pMem_mesh_list->RefreshArray(); } bool SetArrayString_mesh_list( int index, const char *data ) { return m_pMem_mesh_list->SetDataString( index, data ); } unsigned long GetValue_mesh_part_size() { unsigned long res; m_pMem_mesh_part_size->GetDWORD( &res ); return res; } void SetValue_mesh_part_size( unsigned long value ) { m_pMem_mesh_part_size->SetDWORD( value ); } void GetMemberTemplateArray_mesh_part_list( KFTA_cob_mesh_part_list &obj ) { obj.SetData( m_pMem_mesh_part_list ); } unsigned long GetValue_ani_list_size() { unsigned long res; m_pMem_ani_list_size->GetDWORD( &res ); return res; } void SetValue_ani_list_size( unsigned long value ) { m_pMem_ani_list_size->SetDWORD( value ); } int GetArrayCount_ani_list() { return m_pMem_ani_list->GetDataCount(); } const char *GetArrayString_ani_list( int index ) { return m_pMem_ani_list->GetDataString( index ); } void RefreshArray_ani_list() { m_pMem_ani_list->RefreshArray(); } bool SetArrayString_ani_list( int index, const char *data ) { return m_pMem_ani_list->SetDataString( index, data ); } unsigned long GetValue_ani_event_size() { unsigned long res; m_pMem_ani_event_size->GetDWORD( &res ); return res; } void SetValue_ani_event_size( unsigned long value ) { m_pMem_ani_event_size->SetDWORD( value ); } void GetMemberTemplateArray_ani_event_list( KFTA_ani_event_list &obj ) { obj.SetData( m_pMem_ani_event_list ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "cob_header_v11" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_obj_partindex; KSimpleDataObject* m_pMem_obj_clan; KSimpleDataObject* m_pMem_obj_sex; KSimpleDataObject* m_pMem_render_type; KSimpleDataObject* m_pMem_prop_category; KSimpleDataObject* m_pMem_shadow_type; KSimpleDataArrayObject* m_pMem_sel_cube; KSimpleDataArrayObject* m_pMem_dead_cube; KSimpleDataArrayObject* m_pMem_visible_cube; KSimpleDataArrayObject* m_pMem_collide_cube; KSimpleDataObject* m_pMem_effpos_list_size; KTemplateDataArrayObject* m_pMem_effpos_list; KSimpleDataObject* m_pMem_lod_list_size; KTemplateDataArrayObject* m_pMem_lod_list; KSimpleDataObject* m_pMem_height_file_name; KSimpleDataObject* m_pMem_mesh_list_size; KSimpleDataArrayObject* m_pMem_mesh_list; KSimpleDataObject* m_pMem_mesh_part_size; KTemplateDataArrayObject* m_pMem_mesh_part_list; KSimpleDataObject* m_pMem_ani_list_size; KSimpleDataArrayObject* m_pMem_ani_list; KSimpleDataObject* m_pMem_ani_event_size; KTemplateDataArrayObject* m_pMem_ani_event_list; }; class KFTA_cob_header_v11 { public: KFTA_cob_header_v11() { m_pObj = NULL; m_pParent = NULL; } KFTA_cob_header_v11( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_cob_header_v11( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "cob_header_v11" ); } ~KFTA_cob_header_v11() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_cob_header_v11 &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; class KFT_cob_header_v12 { public: KFT_cob_header_v12() { m_pObj = NULL; m_pMem_obj_partindex = NULL; m_pMem_obj_clan = NULL; m_pMem_obj_sex = NULL; m_pMem_render_type = NULL; m_pMem_prop_category = NULL; m_pMem_shadow_type = NULL; m_pMem_sel_cube = NULL; m_pMem_dead_cube = NULL; m_pMem_visible_cube = NULL; m_pMem_collide_cube = NULL; m_pMem_effpos_list_size = NULL; m_pMem_effpos_list = NULL; m_pMem_lod_list_size = NULL; m_pMem_lod_list = NULL; m_pMem_height_file_name = NULL; m_pMem_camera_collision_file_name = NULL; m_pMem_mesh_list_size = NULL; m_pMem_mesh_list = NULL; m_pMem_mesh_part_size = NULL; m_pMem_mesh_part_list = NULL; m_pMem_ani_list_size = NULL; m_pMem_ani_list = NULL; m_pMem_ani_event_size = NULL; m_pMem_ani_event_list = NULL; } KFT_cob_header_v12( KFiler *filer ) { m_pObj = filer->CreateTemplateObject( "cob_header_v12" ); m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_render_type = reinterpret_cast(m_pObj->GetMemberObject( "render_type" )); m_pMem_prop_category = reinterpret_cast(m_pObj->GetMemberObject( "prop_category" )); m_pMem_shadow_type = reinterpret_cast(m_pObj->GetMemberObject( "shadow_type" )); m_pMem_sel_cube = reinterpret_cast(m_pObj->GetMemberObject( "sel_cube" )); m_pMem_dead_cube = reinterpret_cast(m_pObj->GetMemberObject( "dead_cube" )); m_pMem_visible_cube = reinterpret_cast(m_pObj->GetMemberObject( "visible_cube" )); m_pMem_collide_cube = reinterpret_cast(m_pObj->GetMemberObject( "collide_cube" )); m_pMem_effpos_list_size = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list_size" )); m_pMem_effpos_list = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list" )); m_pMem_lod_list_size = reinterpret_cast(m_pObj->GetMemberObject( "lod_list_size" )); m_pMem_lod_list = reinterpret_cast(m_pObj->GetMemberObject( "lod_list" )); m_pMem_height_file_name = reinterpret_cast(m_pObj->GetMemberObject( "height_file_name" )); m_pMem_camera_collision_file_name = reinterpret_cast(m_pObj->GetMemberObject( "camera_collision_file_name" )); m_pMem_mesh_list_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list_size" )); m_pMem_mesh_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } KFT_cob_header_v12( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_render_type = reinterpret_cast(m_pObj->GetMemberObject( "render_type" )); m_pMem_prop_category = reinterpret_cast(m_pObj->GetMemberObject( "prop_category" )); m_pMem_shadow_type = reinterpret_cast(m_pObj->GetMemberObject( "shadow_type" )); m_pMem_sel_cube = reinterpret_cast(m_pObj->GetMemberObject( "sel_cube" )); m_pMem_dead_cube = reinterpret_cast(m_pObj->GetMemberObject( "dead_cube" )); m_pMem_visible_cube = reinterpret_cast(m_pObj->GetMemberObject( "visible_cube" )); m_pMem_collide_cube = reinterpret_cast(m_pObj->GetMemberObject( "collide_cube" )); m_pMem_effpos_list_size = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list_size" )); m_pMem_effpos_list = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list" )); m_pMem_lod_list_size = reinterpret_cast(m_pObj->GetMemberObject( "lod_list_size" )); m_pMem_lod_list = reinterpret_cast(m_pObj->GetMemberObject( "lod_list" )); m_pMem_height_file_name = reinterpret_cast(m_pObj->GetMemberObject( "height_file_name" )); m_pMem_camera_collision_file_name = reinterpret_cast(m_pObj->GetMemberObject( "camera_collision_file_name" )); m_pMem_mesh_list_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list_size" )); m_pMem_mesh_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } ~KFT_cob_header_v12() { } void SetDataObject( KTemplateDataObject *pObj ) { m_pObj = pObj; m_pMem_obj_partindex = reinterpret_cast(m_pObj->GetMemberObject( "obj_partindex" )); m_pMem_obj_clan = reinterpret_cast(m_pObj->GetMemberObject( "obj_clan" )); m_pMem_obj_sex = reinterpret_cast(m_pObj->GetMemberObject( "obj_sex" )); m_pMem_render_type = reinterpret_cast(m_pObj->GetMemberObject( "render_type" )); m_pMem_prop_category = reinterpret_cast(m_pObj->GetMemberObject( "prop_category" )); m_pMem_shadow_type = reinterpret_cast(m_pObj->GetMemberObject( "shadow_type" )); m_pMem_sel_cube = reinterpret_cast(m_pObj->GetMemberObject( "sel_cube" )); m_pMem_dead_cube = reinterpret_cast(m_pObj->GetMemberObject( "dead_cube" )); m_pMem_visible_cube = reinterpret_cast(m_pObj->GetMemberObject( "visible_cube" )); m_pMem_collide_cube = reinterpret_cast(m_pObj->GetMemberObject( "collide_cube" )); m_pMem_effpos_list_size = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list_size" )); m_pMem_effpos_list = reinterpret_cast(m_pObj->GetMemberObject( "effpos_list" )); m_pMem_lod_list_size = reinterpret_cast(m_pObj->GetMemberObject( "lod_list_size" )); m_pMem_lod_list = reinterpret_cast(m_pObj->GetMemberObject( "lod_list" )); m_pMem_height_file_name = reinterpret_cast(m_pObj->GetMemberObject( "height_file_name" )); m_pMem_camera_collision_file_name = reinterpret_cast(m_pObj->GetMemberObject( "camera_collision_file_name" )); m_pMem_mesh_list_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list_size" )); m_pMem_mesh_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_list" )); m_pMem_mesh_part_size = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_size" )); m_pMem_mesh_part_list = reinterpret_cast(m_pObj->GetMemberObject( "mesh_part_list" )); m_pMem_ani_list_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_list_size" )); m_pMem_ani_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_list" )); m_pMem_ani_event_size = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_size" )); m_pMem_ani_event_list = reinterpret_cast(m_pObj->GetMemberObject( "ani_event_list" )); } unsigned long GetValue_obj_partindex() { unsigned long res; m_pMem_obj_partindex->GetDWORD( &res ); return res; } void SetValue_obj_partindex( unsigned long value ) { m_pMem_obj_partindex->SetDWORD( value ); } unsigned long GetValue_obj_clan() { unsigned long res; m_pMem_obj_clan->GetDWORD( &res ); return res; } void SetValue_obj_clan( unsigned long value ) { m_pMem_obj_clan->SetDWORD( value ); } unsigned long GetValue_obj_sex() { unsigned long res; m_pMem_obj_sex->GetDWORD( &res ); return res; } void SetValue_obj_sex( unsigned long value ) { m_pMem_obj_sex->SetDWORD( value ); } unsigned long GetValue_render_type() { unsigned long res; m_pMem_render_type->GetDWORD( &res ); return res; } void SetValue_render_type( unsigned long value ) { m_pMem_render_type->SetDWORD( value ); } unsigned long GetValue_prop_category() { unsigned long res; m_pMem_prop_category->GetDWORD( &res ); return res; } void SetValue_prop_category( unsigned long value ) { m_pMem_prop_category->SetDWORD( value ); } unsigned long GetValue_shadow_type() { unsigned long res; m_pMem_shadow_type->GetDWORD( &res ); return res; } void SetValue_shadow_type( unsigned long value ) { m_pMem_shadow_type->SetDWORD( value ); } int GetArrayCount_sel_cube() { return m_pMem_sel_cube->GetDataCount(); } void GetArrayValue_sel_cube( int index, float *data, size_t data_size, int count ) { m_pMem_sel_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_sel_cube() { m_pMem_sel_cube->RefreshArray(); } void SetArrayValue_sel_cube( int index, const float *data, int count = 1 ) { m_pMem_sel_cube->SetDataFloat( index, data, count ); } int GetArrayCount_dead_cube() { return m_pMem_dead_cube->GetDataCount(); } void GetArrayValue_dead_cube( int index, float *data, size_t data_size, int count ) { m_pMem_dead_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_dead_cube() { m_pMem_dead_cube->RefreshArray(); } void SetArrayValue_dead_cube( int index, const float *data, int count = 1 ) { m_pMem_dead_cube->SetDataFloat( index, data, count ); } int GetArrayCount_visible_cube() { return m_pMem_visible_cube->GetDataCount(); } void GetArrayValue_visible_cube( int index, float *data, size_t data_size, int count ) { m_pMem_visible_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_visible_cube() { m_pMem_visible_cube->RefreshArray(); } void SetArrayValue_visible_cube( int index, const float *data, int count = 1 ) { m_pMem_visible_cube->SetDataFloat( index, data, count ); } int GetArrayCount_collide_cube() { return m_pMem_collide_cube->GetDataCount(); } void GetArrayValue_collide_cube( int index, float *data, size_t data_size, int count ) { m_pMem_collide_cube->GetDataFloat( index, data, data_size, count ); } void RefreshArray_collide_cube() { m_pMem_collide_cube->RefreshArray(); } void SetArrayValue_collide_cube( int index, const float *data, int count = 1 ) { m_pMem_collide_cube->SetDataFloat( index, data, count ); } unsigned long GetValue_effpos_list_size() { unsigned long res; m_pMem_effpos_list_size->GetDWORD( &res ); return res; } void SetValue_effpos_list_size( unsigned long value ) { m_pMem_effpos_list_size->SetDWORD( value ); } void GetMemberTemplateArray_effpos_list( KFTA_effect_pos &obj ) { obj.SetData( m_pMem_effpos_list ); } unsigned long GetValue_lod_list_size() { unsigned long res; m_pMem_lod_list_size->GetDWORD( &res ); return res; } void SetValue_lod_list_size( unsigned long value ) { m_pMem_lod_list_size->SetDWORD( value ); } void GetMemberTemplateArray_lod_list( KFTA_lod_data &obj ) { obj.SetData( m_pMem_lod_list ); } bool GetString_height_file_name( char *data, int &nLen ) { return m_pMem_height_file_name->GetString( data, nLen ); } bool SetString_height_file_name( const char *data, int nLen ) { return m_pMem_height_file_name->SetString( data, nLen ); } bool GetString_camera_collision_file_name( char *data, int &nLen ) { return m_pMem_camera_collision_file_name->GetString( data, nLen ); } bool SetString_camera_collision_file_name( const char *data, int nLen ) { return m_pMem_camera_collision_file_name->SetString( data, nLen ); } unsigned long GetValue_mesh_list_size() { unsigned long res; m_pMem_mesh_list_size->GetDWORD( &res ); return res; } void SetValue_mesh_list_size( unsigned long value ) { m_pMem_mesh_list_size->SetDWORD( value ); } int GetArrayCount_mesh_list() { return m_pMem_mesh_list->GetDataCount(); } const char *GetArrayString_mesh_list( int index ) { return m_pMem_mesh_list->GetDataString( index ); } void RefreshArray_mesh_list() { m_pMem_mesh_list->RefreshArray(); } bool SetArrayString_mesh_list( int index, const char *data ) { return m_pMem_mesh_list->SetDataString( index, data ); } unsigned long GetValue_mesh_part_size() { unsigned long res; m_pMem_mesh_part_size->GetDWORD( &res ); return res; } void SetValue_mesh_part_size( unsigned long value ) { m_pMem_mesh_part_size->SetDWORD( value ); } void GetMemberTemplateArray_mesh_part_list( KFTA_cob_mesh_part_list &obj ) { obj.SetData( m_pMem_mesh_part_list ); } unsigned long GetValue_ani_list_size() { unsigned long res; m_pMem_ani_list_size->GetDWORD( &res ); return res; } void SetValue_ani_list_size( unsigned long value ) { m_pMem_ani_list_size->SetDWORD( value ); } int GetArrayCount_ani_list() { return m_pMem_ani_list->GetDataCount(); } const char *GetArrayString_ani_list( int index ) { return m_pMem_ani_list->GetDataString( index ); } void RefreshArray_ani_list() { m_pMem_ani_list->RefreshArray(); } bool SetArrayString_ani_list( int index, const char *data ) { return m_pMem_ani_list->SetDataString( index, data ); } unsigned long GetValue_ani_event_size() { unsigned long res; m_pMem_ani_event_size->GetDWORD( &res ); return res; } void SetValue_ani_event_size( unsigned long value ) { m_pMem_ani_event_size->SetDWORD( value ); } void GetMemberTemplateArray_ani_event_list( KFTA_ani_event_list &obj ) { obj.SetData( m_pMem_ani_event_list ); } void Save( KFiler &filer ) { filer.AddDataObject( m_pObj ); } static bool Check( KTemplateDataObject *pObj) { return strcmp( pObj->GetTemplateName(), "cob_header_v12" ) == 0; } private: KTemplateDataObject* m_pObj; KSimpleDataObject* m_pMem_obj_partindex; KSimpleDataObject* m_pMem_obj_clan; KSimpleDataObject* m_pMem_obj_sex; KSimpleDataObject* m_pMem_render_type; KSimpleDataObject* m_pMem_prop_category; KSimpleDataObject* m_pMem_shadow_type; KSimpleDataArrayObject* m_pMem_sel_cube; KSimpleDataArrayObject* m_pMem_dead_cube; KSimpleDataArrayObject* m_pMem_visible_cube; KSimpleDataArrayObject* m_pMem_collide_cube; KSimpleDataObject* m_pMem_effpos_list_size; KTemplateDataArrayObject* m_pMem_effpos_list; KSimpleDataObject* m_pMem_lod_list_size; KTemplateDataArrayObject* m_pMem_lod_list; KSimpleDataObject* m_pMem_height_file_name; KSimpleDataObject* m_pMem_camera_collision_file_name; KSimpleDataObject* m_pMem_mesh_list_size; KSimpleDataArrayObject* m_pMem_mesh_list; KSimpleDataObject* m_pMem_mesh_part_size; KTemplateDataArrayObject* m_pMem_mesh_part_list; KSimpleDataObject* m_pMem_ani_list_size; KSimpleDataArrayObject* m_pMem_ani_list; KSimpleDataObject* m_pMem_ani_event_size; KTemplateDataArrayObject* m_pMem_ani_event_list; }; class KFTA_cob_header_v12 { public: KFTA_cob_header_v12() { m_pObj = NULL; m_pParent = NULL; } KFTA_cob_header_v12( KTemplateDataArrayObject* pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } KFTA_cob_header_v12( KTemplateDataObject *pParent ) { m_pParent = pParent; m_pObj = pParent->GetTemplateDataArrayMemberObject( "cob_header_v12" ); } ~KFTA_cob_header_v12() { } void SetData( KTemplateDataArrayObject *pObj ) { m_pObj = pObj; m_pParent = m_pObj->GetParent(); } void SetArrayInfo( int nCount, const char *varCount, KTemplateDataObject *pParent ) { m_pObj->SetArrayInfo( nCount, varCount, pParent ); } void RefreshArray() { m_pObj->RefreshArray(); } int GetDataCount() { return m_pObj->GetDataCount(); } void GetData( int index, KFT_cob_header_v12 &obj ) { obj.SetDataObject( m_pObj->GetData( index ) ); } private: KTemplateDataObject* m_pParent; KTemplateDataArrayObject* m_pObj; }; #endif