feat: implement shapes for entities
This commit is contained in:
@@ -74,7 +74,7 @@ void WorldRenderer::renderMobs() const {
|
||||
for (game::MobPtr mob : m_World->getMobList()) {
|
||||
Renderer::Model model;
|
||||
model.vao = m_MobVao.get();
|
||||
model.positon = { mob->getX(), mob->getY() };
|
||||
model.positon = { mob->getCenterX(), mob->getCenterY() };
|
||||
m_Renderer->renderModel(model);
|
||||
}
|
||||
}
|
||||
@@ -235,11 +235,7 @@ void WorldRenderer::renderMobTooltip() const {
|
||||
void WorldRenderer::detectMobHovering() const {
|
||||
glm::vec2 cursorWorldPos = getCursorWorldPos();
|
||||
for (game::MobPtr mob : m_World->getMobList()) {
|
||||
// mob size is currently 1x1 for all mobs
|
||||
float mobCenterX = mob->getX();
|
||||
float mobCenterY = mob->getY();
|
||||
if (cursorWorldPos.x > mobCenterX - 0.5f && cursorWorldPos.x < mobCenterX + 0.5f
|
||||
&& cursorWorldPos.y > mobCenterY - 0.5f && cursorWorldPos.y < mobCenterY + 0.5f) {
|
||||
if(mob->collidesWith({cursorWorldPos.x, cursorWorldPos.y})){
|
||||
m_MobTooltip->setMob(mob.get());
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -97,8 +97,8 @@ GL::VertexArray loadWorldModel(const td::game::World* world) {
|
||||
|
||||
for (int spawnColor = 0; spawnColor < 2; spawnColor++) {
|
||||
const game::Spawn& spawn = world->getTeam(game::TeamColor(spawnColor)).getSpawn();
|
||||
float fromX = spawn.x - 2, toX = spawn.x + 3;
|
||||
float fromY = spawn.y - 2, toY = spawn.y + 3;
|
||||
float fromX = spawn.getTopLeft().getX() , toX = spawn.getBottomRight().getX();
|
||||
float fromY = spawn.getTopLeft().getY() , toY = spawn.getBottomRight().getY();
|
||||
|
||||
positions.insert(positions.end(), {
|
||||
fromX, fromY,
|
||||
@@ -125,8 +125,8 @@ GL::VertexArray loadWorldModel(const td::game::World* world) {
|
||||
|
||||
for (int castleColor = 0; castleColor < 2; castleColor++) {
|
||||
const game::TeamCastle& castle = world->getTeam(game::TeamColor(castleColor)).getCastle();
|
||||
float fromX = castle.x - 2, toX = castle.x + 3;
|
||||
float fromY = castle.y - 2, toY = castle.y + 3;
|
||||
float fromX = castle.getTopLeft().getX(), toX = castle.getBottomRight().getX();
|
||||
float fromY = castle.getTopLeft().getY(), toY = castle.getBottomRight().getY();
|
||||
|
||||
positions.insert(positions.end(), {
|
||||
fromX, fromY,
|
||||
|
||||
Reference in New Issue
Block a user