Skip to content

Latest commit

 

History

History
31 lines (29 loc) · 799 Bytes

File metadata and controls

31 lines (29 loc) · 799 Bytes

Command

Each command object wraps one action on Headquarters. GUI queues commands, can cancel queued commands, and executes them later.

classDiagram
direction LR
class GUI {
  +receivePlayerCommand(command)
  +cancelPlayerCommand(command)
  +executePlayerCommands()
}
class Command {
  <<abstract>>
  +executeCommand()
  +getName() String
}
class Headquarters
class CreateVillagerCommand
class CreatePaladinCommand
class GatherWoodCommand
class ShowResourcesCommand
GUI o-- Command : queued orders
Command --> Headquarters : receiver
Command <|-- CreateVillagerCommand
Command <|-- CreatePaladinCommand
Command <|-- GatherWoodCommand
Command <|-- ShowResourcesCommand
CreateVillagerCommand --> Headquarters : createVillager()
GatherWoodCommand --> Headquarters : gatherWood()
Loading