Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

PeckerModel.h

Go to the documentation of this file.
00001 
00002 //
00004 
00013 #if !defined(AFX_PECKERMODEL_H__52A881C0_7C0D_4258_82B8_F3E3BC9436F5__INCLUDED_)
00014 #define AFX_PECKERMODEL_H__52A881C0_7C0D_4258_82B8_F3E3BC9436F5__INCLUDED_
00015 
00016 #if _MSC_VER > 1000
00017 #pragma once
00018 #endif // _MSC_VER > 1000
00019 
00020 // Engine includes
00021 #include <ltengineobjects.h>
00022 
00024 class LTCollisionSphere;
00025 
00026 
00028 #define MAX_STARTANIMS      4
00029 
00030 #define ANIMTRACKER_2       1
00031 #define ANIMTRACKER_3       2
00032 #define ANIMTRACKER_4       3
00033 
00034 
00036 class CPeckerModel : public BaseClass
00037 {
00038   public:
00039     // Construction / destruction
00040     CPeckerModel();
00041     virtual ~CPeckerModel();
00042 
00043     // Overridden functions
00044 
00045     uint32      EngineMessageFn(uint32 messageID, void *pData, float fData);
00046 
00047     // Accessors
00048 
00049     // Birdy things
00051     void setBeatAndTime(long avgBeatTime,long lastBeat, int updateInterval);
00052     void setIdle();
00053     void setPeck();
00054 
00055   protected:
00056     // EngineMessageFn handlers
00057 
00058     uint32      PreCreate(void *pData, float fData);
00059     void        ObjectCreated();
00060     void        Update();
00061 
00062     // Other functions
00063 
00064     void        ReadProps(ObjectCreateStruct* pStruct);
00065     void        PostReadProps();
00066 
00067     // Members
00068 
00069     char        m_szModelFile[MAX_CS_FILENAME_LEN];
00070 //  char        m_szTexListFile[MAX_CS_FILENAME_LEN];
00071     char        m_szTexFile[MAX_CS_FILENAME_LEN];
00072 //  char        m_szTexSet[MAX_CS_FILENAME_LEN];
00073 //  char        m_szRSSet[MAX_CS_FILENAME_LEN];
00074 
00075     float       m_fScale;
00076     float       m_fMass;
00077 
00078 /*
00079     char        m_szStartAnims[MAX_STARTANIMS][MAX_CS_FILENAME_LEN];
00080     char        m_szWeightSets[MAX_STARTANIMS][MAX_CS_FILENAME_LEN];
00081 */
00082     char        m_szStartAnim[MAX_CS_FILENAME_LEN];
00083     char        m_szIdleAnim[MAX_CS_FILENAME_LEN];
00084 
00085     uint8       m_nNumExtraTrackers;
00086     LTVector3f  m_vStartAnimDims;
00087 
00088     float       m_fOrigPeckLength;
00089     float       m_fOrigPeckTime;
00090     float       m_fOrigPeckRatio;
00091 
00092     LTCollisionSphere*  m_pCollSphere;
00093 
00094   protected:
00095       bool      m_Idling; 
00096   private:
00097     
00098 };
00099 
00100 
00101 
00102 #endif // !defined(AFX_PECKERMODEL_H__52A881C0_7C0D_4258_82B8_F3E3BC9436F5__INCLUDED_)

Generated on Mon Mar 4 08:42:23 2002 for Aria by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002