#pragma once #include #include #include #include namespace Game::AGame { GAME_ENTITY(Player) public: void setShipTexture(std::shared_ptr tex); void setGroundTexture(std::shared_ptr tex); void respawnRandomSea(float landBoundaryX); bool isShipMode() const { return mIsShipMode; } void onCollisionEnter(Object::Entity* other) override; private: Object::Sound mSound; float mSpeed = 200.f; // Pixels per second [[maybe_unused]] float mHealth = 100.f; std::shared_ptr mShipTex; std::shared_ptr mGroundTex; bool mIsShipMode = true; float mShoreMargin = 40.f; END_GAME_ENTITY() }