Bomberman
ResumeLobbyComponent.hpp
Go to the documentation of this file.
1 //
2 // Created by hbenjamin on 6/18/21.
3 //
4 
5 #pragma once
6 
8 #include <Entity/Entity.hpp>
9 #include <Color.hpp>
11 #include <chrono>
12 
13 namespace BBM
14 {
16  {
17  public:
21  int playerID;
25  bool ready = false;
31  std::chrono::time_point<std::chrono::steady_clock> lastInput;
32 
33  Component *clone(WAL::Entity &entity) const override;
34 
36  explicit ResumeLobbyComponent(WAL::Entity &entity, int playerNumber, WAL::Entity &button, WAL::Entity &tile, int pColor);
38  ResumeLobbyComponent(const ResumeLobbyComponent &) = default;
40  ~ResumeLobbyComponent() override = default;
43  };
44 }
BBM::ResumeLobbyComponent::layout
ControllableComponent::Layout layout
The layout used for this player.
Definition: ResumeLobbyComponent.hpp:19
BBM::ResumeLobbyComponent::readyButton
WAL::Entity & readyButton
The entity containing the ready display.
Definition: ResumeLobbyComponent.hpp:27
BBM::ControllableComponent::Layout
Layout
Definition: ControllableComponent.hpp:20
BBM::ResumeLobbyComponent::playerColor
int playerColor
The color of the player (as an index)
Definition: ResumeLobbyComponent.hpp:23
WAL::Component
Represent a single component of WAL.
Definition: Component.hpp:17
BBM
Definition: AnimationsComponent.cpp:9
BBM::ResumeLobbyComponent::ready
bool ready
Is this player ready.
Definition: ResumeLobbyComponent.hpp:25
Entity.hpp
WAL::Entity
An entity of the WAL's ECS.
Definition: Entity.hpp:20
ControllableComponent.hpp
Component.hpp
BBM::ResumeLobbyComponent::lastInput
std::chrono::time_point< std::chrono::steady_clock > lastInput
The time of last input that this lobby player has made.
Definition: ResumeLobbyComponent.hpp:31
BBM::ResumeLobbyComponent::ResumeLobbyComponent
ResumeLobbyComponent(WAL::Entity &entity, int playerNumber, WAL::Entity &button, WAL::Entity &tile, int pColor)
Create a new lobby component.
Definition: ResumeLobbyComponent.cpp:9
BBM::ResumeLobbyComponent
Definition: ResumeLobbyComponent.hpp:15
WAL::Component::Component
Component(Entity &entity)
A component can't be instantiated, it should be derived.
Definition: Component.cpp:9
BBM::ResumeLobbyComponent::coloredTile
WAL::Entity & coloredTile
The colored rectangle behind the player.
Definition: ResumeLobbyComponent.hpp:29
BBM::ResumeLobbyComponent::playerID
int playerID
The ID of the lobby player (from 0 to 3)
Definition: ResumeLobbyComponent.hpp:21
BBM::ResumeLobbyComponent::~ResumeLobbyComponent
~ResumeLobbyComponent() override=default
A default destructor.
BBM::ResumeLobbyComponent::operator=
ResumeLobbyComponent & operator=(const ResumeLobbyComponent &)=delete
A lobby component is not assignable.
BBM::ResumeLobbyComponent::clone
Component * clone(WAL::Entity &entity) const override
Clone a component for another or the same entity.
Definition: ResumeLobbyComponent.cpp:17
BBM::ControllableComponent::NONE
@ NONE
Definition: ControllableComponent.hpp:22
Color.hpp