Fix resources to level task

This commit is contained in:
Anton Vakhrushev 2020-04-27 11:36:01 +03:00
parent abb41dc86c
commit 822c4dc0ab
3 changed files with 10 additions and 13 deletions

View File

@ -22,7 +22,7 @@ export class UpgradeResourceToLevel extends ActionController {
const requiredLevel = getNumber(args.level);
const notUpgraded = deposits.filter(dep => requiredLevel > dep.level);
const notUpgraded = deposits.filter(dep => !dep.underConstruction && requiredLevel > dep.level);
if (notUpgraded.length === 0) {
this.scheduler.removeTask(task.id);

View File

@ -7,15 +7,10 @@ export class BuildingQueueInfo {
}
}
export class ResourceDeposit {
export interface ResourceDeposit {
readonly buildId: number;
readonly type: ResourceType;
readonly level: number;
readonly ready: boolean;
constructor(buildId: number, type: ResourceType, level: number, ready: boolean) {
this.buildId = buildId;
this.type = type;
this.level = level;
this.ready = ready;
}
readonly underConstruction: boolean;
}

View File

@ -60,11 +60,13 @@ export function onResourceSlotCtrlClick(cb: (buildId: number) => void): void {
function slotToDepositMapper(slot: Slot): ResourceDeposit {
const el = slot.el;
const classes = jQuery(el).attr('class');
const buildId = getNumber(elClassId(classes, 'buildingSlot'));
const level = getNumber(elClassId(classes, 'level'));
const type = getNumber(elClassId(classes, 'gid'));
const ready = !jQuery(el).hasClass('notNow');
return new ResourceDeposit(buildId, numberToResourceType(type), level, ready);
return {
buildId: getNumber(elClassId(classes, 'buildingSlot')),
type: numberToResourceType(getNumber(elClassId(classes, 'gid'))),
level: getNumber(elClassId(classes, 'level')),
ready: !jQuery(el).hasClass('notNow'),
underConstruction: jQuery(el).hasClass('underConstruction'),
};
}
export function grabResourceDeposits(): Array<ResourceDeposit> {