mirror of
https://github.com/AxioDL/PrimeWorldEditor.git
synced 2025-12-21 10:49:23 +00:00
Mass refactoring part 1/2: establishing multiple subprojects, moving source files to their new location, adding resources/templates to version control
This commit is contained in:
45
src/Core/ScriptExtra/CDamageableTriggerExtra.h
Normal file
45
src/Core/ScriptExtra/CDamageableTriggerExtra.h
Normal file
@@ -0,0 +1,45 @@
|
||||
#ifndef CDAMAGEABLETRIGGEREXTRA_H
|
||||
#define CDAMAGEABLETRIGGEREXTRA_H
|
||||
|
||||
#include "CScriptExtra.h"
|
||||
|
||||
class CDamageableTriggerExtra : public CScriptExtra
|
||||
{
|
||||
// Render fluid planes for doors in MP1
|
||||
enum ERenderSide
|
||||
{
|
||||
eNoRender = 0,
|
||||
eNorth = 1,
|
||||
eSouth = 2,
|
||||
eWest = 3,
|
||||
eEast = 4,
|
||||
eUp = 5,
|
||||
eDown = 6
|
||||
};
|
||||
|
||||
CVector3Property *mpSizeProp;
|
||||
CEnumProperty *mpRenderSideProp;
|
||||
CFileProperty *mpTextureProps[3];
|
||||
|
||||
CVector3f mPlaneSize;
|
||||
ERenderSide mRenderSide;
|
||||
TResPtr<CTexture> mpTextures[3];
|
||||
|
||||
CMaterial *mpMat;
|
||||
CVector2f mCoordScale;
|
||||
|
||||
public:
|
||||
explicit CDamageableTriggerExtra(CScriptObject *pInstance, CSceneManager *pScene, CSceneNode *pParent = 0);
|
||||
~CDamageableTriggerExtra();
|
||||
void CreateMaterial();
|
||||
void UpdatePlaneTransform();
|
||||
void PropertyModified(CPropertyBase *pProperty);
|
||||
bool ShouldDrawNormalAssets();
|
||||
void AddToRenderer(CRenderer *pRenderer, const SViewInfo& ViewInfo);
|
||||
void Draw(ERenderOptions Options, int ComponentIndex, const SViewInfo& ViewInfo);
|
||||
void DrawSelection();
|
||||
void RayAABoxIntersectTest(CRayCollisionTester& Tester, const SViewInfo& ViewInfo);
|
||||
SRayIntersection RayNodeIntersectTest(const CRay& Ray, u32 ComponentIndex, const SViewInfo& ViewInfo);
|
||||
};
|
||||
|
||||
#endif // CDAMAGEABLETRIGGEREXTRA_H
|
||||
Reference in New Issue
Block a user