UNPKG

@screeps/engine

Version:

This is a module for Screeps standalone server. See [main repository](https://github.com/screeps/screeps) for more info.

47 lines (37 loc) 1.6 kB
'use strict'; const _ = require('lodash'), utils = require('../../../utils'), driver = utils.getDriver(), C = driver.constants, strongholds = driver.strongholds; module.exports = function (object, scope) { const templates = strongholds.templates, coreRewards = strongholds.coreRewards, coreAmounts = strongholds.coreAmounts, coreDensities = strongholds.coreDensities; const bulk = scope.bulk, roomController = scope.roomController; if (roomController) { bulk.update(roomController, { user: null, level: 0, progress: 0, downgradeTime: null, safeMode: null, safeModeAvailable: 0, safeModeCooldown: null, isPowerEnabled: false, effects: null }); } if (!object || !object.depositType || !coreRewards[object.depositType] || !_.some(coreRewards[object.depositType]) || !object.templateName || !templates[object.templateName]) { return; } const rewardLevel = templates[object.templateName].rewardLevel; const rewards = coreRewards[object.depositType].slice(0, 1 + rewardLevel).map(r => _.isArray(r) ? _.sample(r) : r); const rewardDensities = coreDensities.slice(0, 1 + rewardLevel); const store = utils.calcReward(_.object(rewards, rewardDensities), coreAmounts[rewardLevel]); bulk.update(object, { store }); driver.config.emit('strongholdDestroyed', object, scope); }; //# sourceMappingURL=../../../sourcemaps/processor/intents/invader-core/destroy.js.map