1
This commit is contained in:
parent
081ea350b0
commit
aae438b6c7
@ -3,3 +3,7 @@
|
||||
#include "entity.h"
|
||||
#include "collider.h"
|
||||
|
||||
bool ColliderComponent::Intersect(ColliderComponent* b)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
@ -13,13 +13,16 @@ class ColliderComponent
|
||||
public:
|
||||
Entity* owner = nullptr;
|
||||
ColliderType_e type = CT_None;
|
||||
bool active = true;
|
||||
|
||||
bool Intersect(ColliderComponent* b);
|
||||
};
|
||||
|
||||
class AabbCollider : public ColliderComponent
|
||||
{
|
||||
public:
|
||||
Vector2D center;
|
||||
Vector2D size;
|
||||
Vector2D _min;
|
||||
Vector2D _max;
|
||||
};
|
||||
|
||||
class CircleCollider : public ColliderComponent
|
||||
|
@ -1,12 +1,29 @@
|
||||
#include "precompile.h"
|
||||
|
||||
#include "entity.h"
|
||||
#include "collider.h"
|
||||
|
||||
Entity::~Entity()
|
||||
{
|
||||
for (auto& itr : colliders) {
|
||||
ColliderComponent* collider = itr;
|
||||
delete collider;
|
||||
switch (collider->type) {
|
||||
case CT_Aabb:
|
||||
{
|
||||
delete (AabbCollider*)collider;
|
||||
}
|
||||
break;
|
||||
case CT_Circle:
|
||||
{
|
||||
delete (CircleCollider*)collider;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
{
|
||||
delete collider;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
colliders.clear();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user