Remove standalone building queue info

This commit is contained in:
Anton Vakhrushev 2020-05-27 09:57:33 +03:00
parent c1c832c21c
commit b33d84bd35
6 changed files with 1 additions and 27 deletions

View File

@ -43,12 +43,4 @@ export class ActionController {
throw new TryLaterError(aroundMinutes(1), 'Not same village');
}
}
ensureBuildingQueueIsEmpty() {
const storage = new VillageStorage(grabActiveVillageId());
const info = storage.getBuildingQueueInfo();
if (info.seconds > 0) {
throw new TryLaterError(info.seconds + 1, 'Building queue is full');
}
}
}

View File

@ -10,7 +10,6 @@ export class BuildBuildingAction extends ActionController {
async run(args: Args, task: Task): Promise<any> {
try {
this.ensureSameVillage(args, task);
this.ensureBuildingQueueIsEmpty();
const buildTypeId = args.buildTypeId || taskError('Undefined build type id');
clickBuildButton(buildTypeId);
} catch (e) {

View File

@ -10,7 +10,6 @@ export class UpgradeBuildingAction extends ActionController {
async run(args: Args, task: Task): Promise<any> {
try {
this.ensureSameVillage(args, task);
this.ensureBuildingQueueIsEmpty();
clickUpgradeButton();
} catch (e) {
if (e instanceof GrabError) {

View File

@ -13,7 +13,6 @@ export class VillageOverviewPageGrabber extends Grabber {
}
this.storage.storeResourcesPerformance(grabResourcesPerformance());
this.storage.storeBuildingQueueInfo(this.grabBuildingQueueInfoOrDefault());
const buildingQueueInfo = this.grabBuildingQueueInfoOrDefault();
const buildingEndTime = buildingQueueInfo.seconds

View File

@ -1,17 +1,15 @@
import { DataStorage } from '../DataStorage';
import { BuildingQueueInfo } from '../Game';
import { Resources, ResourcesInterface } from '../Core/Resources';
import { ResourceStorage } from '../Core/ResourceStorage';
import { IncomingMerchant, MerchantsInfo } from '../Core/Market';
import { VillageSettings, VillageSettingsDefaults } from '../Core/Village';
import { ProductionQueue } from '../Core/ProductionQueue';
import { getNumber } from '../utils';
import { Task, TaskList, uniqTaskId } from '../Queue/TaskProvider';
import { Task, uniqTaskId } from '../Queue/TaskProvider';
const RESOURCES_KEY = 'resources';
const CAPACITY_KEY = 'capacity';
const PERFORMANCE_KEY = 'performance';
const BUILDING_QUEUE_INFO_KEY = 'building_queue_info';
const INCOMING_MERCHANTS_KEY = 'incoming_merchants';
const MERCHANTS_INFO_KEY = 'merchants_info';
const SETTINGS_KEY = 'settings';
@ -54,16 +52,6 @@ export class VillageStorage {
return this.storage.getTyped(PERFORMANCE_KEY, ResourceOptions);
}
storeBuildingQueueInfo(info: BuildingQueueInfo): void {
this.storage.set(BUILDING_QUEUE_INFO_KEY, info);
}
getBuildingQueueInfo(): BuildingQueueInfo {
let plain = this.storage.get(BUILDING_QUEUE_INFO_KEY);
let res = new BuildingQueueInfo(0);
return Object.assign(res, plain) as BuildingQueueInfo;
}
storeMerchantsInfo(info: MerchantsInfo): void {
this.storage.set(MERCHANTS_INFO_KEY, info);
}

View File

@ -78,7 +78,6 @@ interface VillageOwnState {
*/
totalRequired: ResourceLineState;
incomingResources: Resources;
buildRemainingSeconds: number;
settings: VillageSettings;
queues: { [queue: string]: VillageProductionQueueState | undefined };
}
@ -196,7 +195,6 @@ function createVillageOwnState(
const resources = storage.getResources();
const resourceStorage = storage.getResourceStorage();
const performance = storage.getResourcesPerformance();
const buildQueueInfo = storage.getBuildingQueueInfo();
const requiredResources = taskCollection.getReadyTaskRequiredResources();
const frontierResources = taskCollection.getFrontierResources();
const totalRequiredResources = taskCollection.getAllTasksRequiredResources();
@ -210,7 +208,6 @@ function createVillageOwnState(
required: calcResourceBalance(requiredResources, resources, performance),
frontierRequired: calcResourceBalance(frontierResources, resources, performance),
totalRequired: calcResourceBalance(totalRequiredResources, resources, performance),
buildRemainingSeconds: buildQueueInfo.seconds,
incomingResources: calcIncomingResources(storage),
settings: storage.getSettings(),
queues: createAllProductionQueueStates(storage, taskCollection),