| 2009 | } |
| 2010 | |
| 2011 | void BuildOutsideRoomsTable() |
| 2012 | { |
| 2013 | for (int x = 0; x < OUTSIDE_SIZE; x++) |
| 2014 | { |
| 2015 | for (int z = 0; z < OUTSIDE_SIZE; z++) |
| 2016 | OutsideRoomTable[x][z].clear(); |
| 2017 | } |
| 2018 | |
| 2019 | for (int i = 0; i < g_Level.Rooms.size(); i++) |
| 2020 | { |
| 2021 | auto* room = &g_Level.Rooms[i]; |
| 2022 | |
| 2023 | int rx = (room->Position.x / BLOCK(1)); |
| 2024 | int rz = (room->Position.z / BLOCK(1)); |
| 2025 | |
| 2026 | for (int x = 0; x < OUTSIDE_SIZE; x++) |
| 2027 | { |
| 2028 | if (x < (rx + 1) || x > (rx + room->XSize - 2)) |
| 2029 | continue; |
| 2030 | |
| 2031 | for (int z = 0; z < OUTSIDE_SIZE; z++) |
| 2032 | { |
| 2033 | if (z < (rz + 1) || z > (rz + room->ZSize - 2)) |
| 2034 | continue; |
| 2035 | |
| 2036 | OutsideRoomTable[x][z].push_back(i); |
| 2037 | } |
| 2038 | } |
| 2039 | } |
| 2040 | } |