#ifndef Kicker_hpp
#define Kicker_hpp

#include <logic/Object.hpp>

struct Kicker : MeshObject {
  const double kickSpeedY;
  Kicker(const double kickMaxYFactor = 1);
private:
  struct Mesh : CylinderMesh {
    Mesh();
    ::Mesh& setCenterColor(const double f = 0);
  private:
    Vertex* center = nullptr;
  } mesh;
  const ::Mesh& getMesh() const override;
  const bool isStatic() const override;
  Object& simulate(const Time dt) override;
};

#endif
