universe.cpp: protect also is_spot against hole in the universe
This commit is contained in:
@@ -908,6 +908,9 @@ bool cCurOut::is_spot(int x, int y) {
|
||||
if(y >= 48) sector_y++, y -= 48;
|
||||
sector_x += univ.party.outdoor_corner.x;
|
||||
sector_y += univ.party.outdoor_corner.y;
|
||||
// can happen if a hole allows to goes out the scenario
|
||||
if(sector_x < 0 || sector_x >= univ.scenario.outdoors.width() || sector_y < 0 || sector_y >= univ.scenario.outdoors.height())
|
||||
return false;
|
||||
return univ.scenario.outdoors[sector_x][sector_y]->special_spot[x][y];
|
||||
}
|
||||
|
||||
@@ -917,9 +920,8 @@ bool cCurOut::is_road(int x, int y) {
|
||||
if(y >= 48) sector_y++, y -= 48;
|
||||
sector_x += univ.party.outdoor_corner.x;
|
||||
sector_y += univ.party.outdoor_corner.y;
|
||||
// can happens if a hole allows to goes out the scenario...
|
||||
if (sector_x<0 || sector_x>=univ.scenario.outdoors.width() ||
|
||||
sector_y<0 || sector_y>=univ.scenario.outdoors.height())
|
||||
// can happen if a hole allows to goes out the scenario...
|
||||
if(sector_x < 0 || sector_x >= univ.scenario.outdoors.width() || sector_y < 0 || sector_y >= univ.scenario.outdoors.height())
|
||||
return false;
|
||||
return univ.scenario.outdoors[sector_x][sector_y]->roads[x][y];
|
||||
}
|
||||
|
Reference in New Issue
Block a user