Add building queue time grabber
This commit is contained in:
@ -2,22 +2,19 @@ import { ActionController, registerAction } from './ActionController';
|
||||
import { Args } from '../Common';
|
||||
import { Task } from '../Storage/TaskQueue';
|
||||
import { BuildingQueueFullError } from '../Errors';
|
||||
import { grabActiveVillageId } from '../Page/VillageBlock';
|
||||
import { grabActiveVillageId, grabBuildingQueueInfo } from '../Page/VillageBlock';
|
||||
|
||||
@registerAction
|
||||
export class CheckBuildingRemainingTimeAction extends ActionController {
|
||||
async run(args: Args, task: Task): Promise<any> {
|
||||
const timer = jQuery('.buildDuration .timer');
|
||||
if (timer.length === 1) {
|
||||
const remainingSeconds = Number(timer.attr('value'));
|
||||
if (remainingSeconds > 0) {
|
||||
throw new BuildingQueueFullError(
|
||||
task.id,
|
||||
grabActiveVillageId(),
|
||||
remainingSeconds + 1,
|
||||
'Building queue is full'
|
||||
);
|
||||
}
|
||||
const info = grabBuildingQueueInfo();
|
||||
if (info.seconds > 0) {
|
||||
throw new BuildingQueueFullError(
|
||||
task.id,
|
||||
grabActiveVillageId(),
|
||||
info.seconds + 1,
|
||||
'Building queue is full'
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user