From d4aca5162c4c4824c04b2e739582bf60ae3a5365 Mon Sep 17 00:00:00 2001 From: Anton Vakhrushev Date: Sat, 25 Apr 2020 12:25:05 +0300 Subject: [PATCH] Refactorings village state view --- src/ControlPanel.ts | 34 +++-------- src/DashboardView/ResourceBalance.vue | 29 +++++++-- src/DashboardView/VillageStateList.vue | 84 ++++++++++++++++++-------- 3 files changed, 92 insertions(+), 55 deletions(-) diff --git a/src/ControlPanel.ts b/src/ControlPanel.ts index 8ed02fe..cd7f142 100644 --- a/src/ControlPanel.ts +++ b/src/ControlPanel.ts @@ -166,25 +166,15 @@ class VillageController { public readonly crop; public readonly resources; public readonly performance; - public readonly requiredResources; - public readonly totalRequiredResources; + public readonly requiredResources: Resources; + public readonly requiredBalance: Resources; + public readonly totalRequiredResources: Resources; + public readonly totalRequiredBalance: Resources; + public readonly incomingResources: Resources; public readonly storage; - public readonly lumber_hour; - public readonly clay_hour; - public readonly iron_hour; - public readonly crop_hour; - public readonly lumber_need; - public readonly clay_need; - public readonly iron_need; - public readonly crop_need; - public readonly lumber_total_need; - public readonly clay_total_need; - public readonly iron_total_need; - public readonly crop_total_need; public readonly warehouse; public readonly granary; public readonly buildRemainingSeconds; - public readonly incomingResources: Resources; constructor(village: Village, state: VillageState, scheduler: Scheduler) { const resources = state.getResources(); @@ -204,20 +194,10 @@ class VillageController { this.resources = resources; this.performance = performance; this.requiredResources = requiredResources; + this.requiredBalance = resources.sub(requiredResources); this.totalRequiredResources = totalRequiredResources; + this.totalRequiredBalance = resources.sub(totalRequiredResources); this.storage = storage; - this.lumber_hour = performance.lumber; - this.clay_hour = performance.clay; - this.iron_hour = performance.iron; - this.crop_hour = performance.crop; - this.lumber_need = requiredResources.lumber; - this.clay_need = requiredResources.clay; - this.iron_need = requiredResources.iron; - this.crop_need = requiredResources.crop; - this.lumber_total_need = totalRequiredResources.lumber; - this.clay_total_need = totalRequiredResources.clay; - this.iron_total_need = totalRequiredResources.iron; - this.crop_total_need = totalRequiredResources.crop; this.warehouse = storage.warehouse; this.granary = storage.granary; this.buildRemainingSeconds = buildQueueInfo.seconds; diff --git a/src/DashboardView/ResourceBalance.vue b/src/DashboardView/ResourceBalance.vue index 18ac368..ee8ec40 100644 --- a/src/DashboardView/ResourceBalance.vue +++ b/src/DashboardView/ResourceBalance.vue @@ -4,7 +4,23 @@