Albo jak sprawdzić, czy sześcian o podanych wierzchołkach zawiera się w ścianie?
Docelowo, chcę przerobić Generator losowych spawnów, gdyż zdarza się, że losowane są
miejsca bardzo blisko ściany, przez co późniejszy box o wymiarach 50×50 jest częściowo w ścianie.
Próbowałem sprawdzić typ przestrzeni dla pobliskich punktów, lecz funkcja nie działa prawidłowo
stock wallCollision(Float:point[3]){
new Float:vec_add[10][3]={
{-50.0, -50.0, 50.0},
{-50.0, 0.0, 50.0},
{-50.0, 50.0, 50.0},
{0.0, -50.0, 50.0},
{0.0, 0.0, 0.0},
{0.0, 0.0, 50.0},
{0.0, 50.0, 50.0},
{50.0, -50.0, 50.0},
{50.0, 0.0, 50.0},
{50.0, 50.0, 50.0}
};
for(new i, i<10; ++i){
new Float:vec[3];
for(new j, j<3; ++j){
vec[j]=point[j]+vec_add[i][j];
}
if(engfunc(EngFunc_PointContents, data)==CONTENTS_EMPTY){
continue;
}
break;
}
return (i==10);
}
Męczę się z tym i nie mogę znaleźć żadnych informacji, jak wykryć ścianę, może ktoś z Was wie, jak tego dokonać?