Merge branch 'main' into particles-first

This commit is contained in:
MihailRis 2024-11-05 03:02:42 +03:00
commit f04d197047
2 changed files with 12 additions and 4 deletions

View File

@ -437,11 +437,15 @@ void PlayerController::processRightClick(const Block& def, const Block& target)
}
blockid_t chosenBlock = def.rt.id;
AABB blockAABB(coord, coord + 1);
bool blocked = level->entities->hasBlockingInside(blockAABB);
if (def.obstacle && blocked) {
return;
if (def.obstacle) {
std::vector<AABB> hitboxes = def.rotatable ? def.rt.hitboxes[state.rotation] : def.hitboxes;
for (AABB blockAABB : hitboxes) {
bool blocked = level->entities->hasBlockingInside(blockAABB.move(coord));
if (blocked) {
return;
}
}
}
auto vox = chunks->get(coord);
if (vox == nullptr) {

View File

@ -34,6 +34,10 @@ struct AABB {
return (a + b) * 0.5f;
}
inline AABB move(glm::vec3 pos) const {
return AABB(a + pos, b + pos);
}
/// @brief Multiply AABB size from center
inline void scale(const glm::vec3 mul) {
glm::vec3 center = (a + b) * 0.5f;