///////////////////////////////////////////////////////////////////////////// // BRB.h : main header file for the PLUGTEST DLL ///////////////////////////////////////////////////////////////////////////// #if !defined(AFX_PLUGTEST_H__68E70A2D_B863_11D1_98AD_0040051EDCE7__INCLUDED_) #define AFX_PLUGTEST_H__68E70A2D_B863_11D1_98AD_0040051EDCE7__INCLUDED_ #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000 #ifndef __AFXWIN_H__ #error include 'stdafx.h' before including this file for PCH #endif #include "bmmlib.h" // Bitmap lib #include "utilapi.h" // Utility Plugins lib #include "istdplug.h" #define BRB_CLASS_ID Class_ID(0x4c9b40d0, 0x3bf66064) #define BRB_SUPER_CLASS_ID UTILITY_CLASS_ID #include "resource.h" // main symbols #if !defined(STUFF_STUFF_HPP) #include "Stuff\Stuff.hpp" #endif #if !defined(MAXPROXIES_MAXPROXIES_HPP) #include "MAXProxies\MAXProxies.hpp" #endif #if !defined(MIDLEVELRENDERER_HPP) #include "MLR\MLR.hpp" #endif #if !defined(ELEMENTPROXIES_ELEMENTPROXIES_HPP) #include "ElementProxies\ElementProxies.hpp" #endif #if !defined(ELEMENTRENDERER_ELEMENTRENDERER_HPP) #include "ElementRenderer\ElementRenderer.hpp" #endif #if !defined(GOSFX_GOSFX_HPP) #include #endif #define EXPORTINFO_CLASS_ID Class_ID(0x17724552, 0x2ee077db) #define EXPORTINFO_SUPER_CLASS_ID UTILITY_CLASS_ID #define TEMP_DATA_ID 1 #define PERM_DATA_ID 0 #define MAX_FILES 8 #define ONE_MINUS_MAX_FILES (MAX_FILES-1) ///////////////////////////////////////////////////////////////////////////// // structure to save way we are exporting to be used in the case of command // line exporting. defaults are all false. // //typedef struct { // bool overwriteTextures; // bool exportCharacter; // bool outputAmatureFile; //} ErfExportInfo; ///////////////////////////////////////////////////////////////////////////// // // structure to save way we are exporting to be used in the case of command // line exporting. defaults are all false. // typedef struct { bool bIsBRB; bool overwriteTextures; bool outputAmatureFile; unsigned exportType; } ExportInfo; ///////////////////////////////////////////////////////////////////////////// // CPlugTestApp // See BRB.cpp for the implementation of this class // class CPlugTestApp : public CWinApp { public: CPlugTestApp(); // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CPlugTestApp) public: virtual BOOL InitInstance(); virtual int ExitInstance(); //}}AFX_VIRTUAL //{{AFX_MSG(CPlugTestApp) // NOTE - the ClassWizard will add and remove member functions here. // DO NOT EDIT what you see in these blocks of generated code ! //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ///////////////////////////////////////////////////////////////////////////// // PlugPanel, manage the Plugins' display panel class PlugPanel : public UtilityObj { public: HINSTANCE m_hInstance; IUtil* m_iu; Interface* m_ip; HWND m_hPanel; TSTR m_game_path; // path that mech 4 lives in i.e. e:\MW4 public: // Constructor & Destructor PlugPanel() {} virtual ~PlugPanel() {} // Overides of the UtilityObj class void BeginEditParams(Interface* ip, IUtil* iu); void EndEditParams(Interface* ip, IUtil* iu); void DeleteThis() {} void Init(HWND hWnd) {} void Destroy(HWND hWnd) {} // //Specific Methods // public: void GetGamePath(); void OnPreviewAnimation(); void OnPreviewLOD(); void OnErfView(); void OnExportToGame(); bool AddPreferences(INode *node); bool RemovePreferences(INode *node); // //Variables // enum ETYPE{ EXPORT_SHAPE = 0, EXPORT_CHARACTER = 1, EXPORT_ANIM = 2, }; private: ExportInfo m_exportInfo; // data about export settings CString m_fileName[MAX_FILES]; CString m_sortName[MAX_FILES]; int m_farLod[MAX_FILES]; int m_nearLod[MAX_FILES]; int m_fileCount; int WriteBrbPropFile(ETYPE etype); }; extern PlugPanel thePlugPanel; // The One and only One object //////////////////////////////////////////////////////////////////////////////// // PlugDesc, Plugin description class class PlugDesc : public ClassDesc { public: int IsPublic () {return 1;} void* Create (BOOL loading = FALSE) {return &thePlugPanel;} const TCHAR* ClassName () {return _T("Big Red Button");} SClass_ID SuperClassID () {return UTILITY_CLASS_ID;} Class_ID ClassID () {return BRB_CLASS_ID;} const TCHAR* Category () {return _T("Fasa Interactive");} }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Developer Studio will insert additional declarations immediately before the previous line. #endif // !defined(AFX_PLUGTEST_H__68E70A2D_B863_11D1_98AD_0040051EDCE7__INCLUDED_)