31#include "hpl1/engine/graphics/Graphics.h"
32#include "hpl1/engine/graphics/GraphicsTypes.h"
33#include "hpl1/engine/graphics/Material.h"
34#include "hpl1/engine/graphics/Mesh2d.h"
35#include "hpl1/engine/resources/ImageManager.h"
36#include "hpl1/engine/resources/ResourceImage.h"
40enum eTileCollisionType {
41 eTileCollisionType_None,
42 eTileCollisionType_Normal,
43 eTileCollisionType_OnlyDown,
44 eTileCollisionType_LastEnum
49 eTileDataType_LastEnum
57 virtual void Destroy() = 0;
58 virtual bool IsSolid() = 0;
59 virtual eTileDataType GetType() = 0;
73 bool IsSolid() {
return mbIsSolid; }
74 void SetIsSolid(
bool abIsSolid) { mbIsSolid = abIsSolid; }
76 eTileCollisionType GetCollisionType() {
return mCollisionType; }
77 void SetCollisionType(eTileCollisionType aCollisionType) { mCollisionType = aCollisionType; }
79 eTileDataType GetType() {
return eTileDataType_Normal; }
80 tVertexVec *GetVertexVec(eTileRotation aRotation);
81 tUIntVec *GetIndexVec(eTileRotation aRotation);
83 tVertexVec *GetCollideVertexVec(eTileRotation aRotation);
84 tUIntVec *GetCollideIndexVec(eTileRotation aRotation);
86 iMaterial *GetMaterial() {
return mpMaterial; }
88 cMesh2D *GetMesh() {
return mpMesh; }
93 void SetCollideMesh(
cMesh2D *apCollideMesh);
101 tVertexVec *mvCollideVtx[eTileRotation_LastEnum];
107 eTileCollisionType mCollisionType;
Definition: ImageManager.h:48
Definition: TileData.h:67
Definition: Material.h:203
Definition: TileData.h:53