MCPcopy Create free account
hub / github.com/OpenXcom/OpenXcom / isQueuedBuilding

Method isQueuedBuilding

src/Basescape/BaseView.cpp:237–250  ·  view source on GitHub ↗

* Returns if the placed facility is placed in queue or not. * @param rule Facility type. * @return True if queued, False otherwise. */

Source from the content-addressed store, hash-verified

235 * @return True if queued, False otherwise.
236 */
237bool BaseView::isQueuedBuilding(RuleBaseFacility *rule) const
238{
239 for (int i = 0; i < rule->getSize(); ++i)
240 {
241 if ((_gridX > 0 && _facilities[_gridX - 1][_gridY + i] != 0 && _facilities[_gridX - 1][_gridY + i]->getBuildTime() == 0) ||
242 (_gridY > 0 && _facilities[_gridX + i][_gridY - 1] != 0 && _facilities[_gridX + i][_gridY - 1]->getBuildTime() == 0) ||
243 (_gridX + rule->getSize() < BASE_SIZE && _facilities[_gridX + rule->getSize()][_gridY + i] != 0 && _facilities[_gridX + rule->getSize()][_gridY + i]->getBuildTime() == 0) ||
244 (_gridY + rule->getSize() < BASE_SIZE && _facilities[_gridX + i][_gridY + rule->getSize()] != 0 && _facilities[_gridX + i][_gridY + rule->getSize()]->getBuildTime() == 0))
245 {
246 return false;
247 }
248 }
249 return true;
250}
251
252/**
253 * ReCalculates the remaining build-time of all queued buildings.

Callers 1

viewClickMethod · 0.80

Calls 2

getSizeMethod · 0.45
getBuildTimeMethod · 0.45

Tested by

no test coverage detected