Began work on the client
This commit is contained in:
@@ -65,6 +65,10 @@ DisconnectedScreen::~DisconnectedScreen() {
|
||||
//Frame loop
|
||||
//-------------------------
|
||||
|
||||
void DisconnectedScreen::FrameStart() {
|
||||
//
|
||||
}
|
||||
|
||||
void DisconnectedScreen::Update() {
|
||||
if (std::chrono::steady_clock::now() - startTick > std::chrono::duration<int>(10)) {
|
||||
SetNextScene(SceneList::MAINMENU);
|
||||
@@ -74,10 +78,14 @@ void DisconnectedScreen::Update() {
|
||||
while(UDPNetworkUtility::GetSingleton().Receive());
|
||||
}
|
||||
|
||||
void DisconnectedScreen::Render(SDL_Surface* const screen) {
|
||||
void DisconnectedScreen::FrameEnd() {
|
||||
//
|
||||
}
|
||||
|
||||
void DisconnectedScreen::RenderFrame(SDL_Renderer* renderer) {
|
||||
ConfigUtility& config = ConfigUtility::GetSingleton();
|
||||
|
||||
backButton.DrawTo(screen);
|
||||
backButton.DrawTo(renderer);
|
||||
font.DrawStringTo(config["client.disconnectMessage"], screen, 50, 30);
|
||||
}
|
||||
|
||||
@@ -85,10 +93,6 @@ void DisconnectedScreen::Render(SDL_Surface* const screen) {
|
||||
//Event handlers
|
||||
//-------------------------
|
||||
|
||||
void DisconnectedScreen::QuitEvent() {
|
||||
SetNextScene(SceneList::QUIT);
|
||||
}
|
||||
|
||||
void DisconnectedScreen::MouseMotion(SDL_MouseMotionEvent const& motion) {
|
||||
backButton.MouseMotion(motion);
|
||||
}
|
||||
@@ -98,15 +102,15 @@ void DisconnectedScreen::MouseButtonDown(SDL_MouseButtonEvent const& button) {
|
||||
}
|
||||
|
||||
void DisconnectedScreen::MouseButtonUp(SDL_MouseButtonEvent const& button) {
|
||||
if (backButton.MouseButtonUp(button) == Button::State::HOVER) {
|
||||
SetNextScene(SceneList::MAINMENU);
|
||||
if (backButton.MouseButtonUp(button) == Button::State::RELEASED) {
|
||||
SetSceneSignal(SceneSignal::MAINMENU);
|
||||
}
|
||||
}
|
||||
|
||||
void DisconnectedScreen::KeyDown(SDL_KeyboardEvent const& key) {
|
||||
switch(key.keysym.sym) {
|
||||
case SDLK_ESCAPE:
|
||||
SetNextScene(SceneList::MAINMENU);
|
||||
SetSceneSignal(SceneSignal::MAINMENU);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
|
||||
//graphics
|
||||
#include "image.hpp"
|
||||
#include "raster_font.hpp"
|
||||
#include "button.hpp"
|
||||
|
||||
//client
|
||||
@@ -38,24 +37,24 @@ public:
|
||||
DisconnectedScreen();
|
||||
~DisconnectedScreen();
|
||||
|
||||
protected:
|
||||
//Frame loop
|
||||
void Update();
|
||||
void Render(SDL_Surface* const);
|
||||
void RenderFrame(SDL_Renderer* renderer) override;
|
||||
|
||||
//Event handlers
|
||||
void QuitEvent();
|
||||
void MouseMotion(SDL_MouseMotionEvent const&);
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const&);
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const&);
|
||||
void KeyDown(SDL_KeyboardEvent const&);
|
||||
void KeyUp(SDL_KeyboardEvent const&);
|
||||
protected:
|
||||
//frame phases
|
||||
void FrameStart() override;
|
||||
void Update() override;
|
||||
void FrameEnd() override;
|
||||
|
||||
//input events
|
||||
void MouseMotion(SDL_MouseMotionEvent const& event) override;
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseWheel(SDL_MouseWheelEvent const& event) override;
|
||||
void KeyDown(SDL_KeyboardEvent const& event) override;
|
||||
void KeyUp(SDL_KeyboardEvent const& event) override;
|
||||
|
||||
//graphics
|
||||
Image image;
|
||||
RasterFont font;
|
||||
|
||||
//UI
|
||||
Button backButton;
|
||||
|
||||
//auto return
|
||||
|
||||
@@ -99,13 +99,13 @@ void LobbyMenu::FrameEnd() {
|
||||
//
|
||||
}
|
||||
|
||||
void LobbyMenu::Render(SDL_Surface* const screen) {
|
||||
void ExampleScene::RenderFrame(SDL_Renderer* renderer) {
|
||||
//TODO: (2) I need a proper UI system for the entire client and the editor
|
||||
|
||||
//UI
|
||||
search.DrawTo(screen);
|
||||
join.DrawTo(screen);
|
||||
back.DrawTo(screen);
|
||||
search.DrawTo(renderer);
|
||||
join.DrawTo(renderer);
|
||||
back.DrawTo(renderer);
|
||||
|
||||
//TODO: (3) draw headers for the server list
|
||||
//TODO: (3) ping/delay displayed in the server list
|
||||
@@ -173,10 +173,14 @@ void LobbyMenu::MouseButtonUp(SDL_MouseButtonEvent const& button) {
|
||||
}
|
||||
}
|
||||
|
||||
void LobbyMenu::MouseWheel(SDL_MouseWheelEvent const& event) {
|
||||
//
|
||||
}
|
||||
|
||||
void LobbyMenu::KeyDown(SDL_KeyboardEvent const& key) {
|
||||
switch(key.keysym.sym) {
|
||||
case SDLK_ESCAPE:
|
||||
SetNextScene(SceneList::MAINMENU);
|
||||
SetSceneSignal(SceneSignal::MAINMENU);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
|
||||
//graphics & ui
|
||||
#include "image.hpp"
|
||||
#include "raster_font.hpp"
|
||||
#include "button.hpp"
|
||||
#include "bounding_box.hpp"
|
||||
|
||||
@@ -44,19 +43,21 @@ public:
|
||||
LobbyMenu(int* const argClientIndex, int* const argAccountIndex);
|
||||
~LobbyMenu();
|
||||
|
||||
protected:
|
||||
//Frame loop
|
||||
void FrameStart();
|
||||
void Update();
|
||||
void FrameEnd();
|
||||
void Render(SDL_Surface* const);
|
||||
void RenderFrame(SDL_Renderer* renderer) override;
|
||||
|
||||
//Event handlers
|
||||
void MouseMotion(SDL_MouseMotionEvent const&);
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const&);
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const&);
|
||||
void KeyDown(SDL_KeyboardEvent const&);
|
||||
void KeyUp(SDL_KeyboardEvent const&);
|
||||
protected:
|
||||
//frame phases
|
||||
void FrameStart() override;
|
||||
void Update() override;
|
||||
void FrameEnd() override;
|
||||
|
||||
//input events
|
||||
void MouseMotion(SDL_MouseMotionEvent const& event) override;
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseWheel(SDL_MouseWheelEvent const& event) override;
|
||||
void KeyDown(SDL_KeyboardEvent const& event) override;
|
||||
void KeyUp(SDL_KeyboardEvent const& event) override;
|
||||
|
||||
//Network handlers
|
||||
void HandlePacket(SerialPacket* const);
|
||||
@@ -79,7 +80,6 @@ protected:
|
||||
|
||||
//members
|
||||
Image image;
|
||||
RasterFont font;
|
||||
Button search;
|
||||
Button join;
|
||||
Button back;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
#include "base_scene.hpp"
|
||||
|
||||
#include "image.hpp"
|
||||
#include "raster_font.hpp"
|
||||
#include "button.hpp"
|
||||
|
||||
class MainMenu : public BaseScene {
|
||||
@@ -33,23 +32,24 @@ public:
|
||||
MainMenu();
|
||||
~MainMenu();
|
||||
|
||||
protected:
|
||||
//Frame loop
|
||||
void FrameStart();
|
||||
void Update();
|
||||
void FrameEnd();
|
||||
void Render(SDL_Surface* const);
|
||||
void RenderFrame(SDL_Renderer* renderer) override;
|
||||
|
||||
//Event handlers
|
||||
void MouseMotion(SDL_MouseMotionEvent const&);
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const&);
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const&);
|
||||
void KeyDown(SDL_KeyboardEvent const&);
|
||||
void KeyUp(SDL_KeyboardEvent const&);
|
||||
protected:
|
||||
//frame phases
|
||||
void FrameStart() override;
|
||||
void Update() override;
|
||||
void FrameEnd() override;
|
||||
|
||||
//input events
|
||||
void MouseMotion(SDL_MouseMotionEvent const& event) override;
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseWheel(SDL_MouseWheelEvent const& event) override;
|
||||
void KeyDown(SDL_KeyboardEvent const& event) override;
|
||||
void KeyUp(SDL_KeyboardEvent const& event) override;
|
||||
|
||||
//members
|
||||
Image image;
|
||||
RasterFont font;
|
||||
Button startButton;
|
||||
Button optionsButton;
|
||||
Button quitButton;
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
#include "base_scene.hpp"
|
||||
|
||||
#include "image.hpp"
|
||||
#include "raster_font.hpp"
|
||||
#include "button.hpp"
|
||||
|
||||
//NOTE: The options screen needs to be USED
|
||||
@@ -34,22 +33,23 @@ public:
|
||||
OptionsMenu();
|
||||
~OptionsMenu();
|
||||
|
||||
protected:
|
||||
//Frame loop
|
||||
void FrameStart();
|
||||
void Update();
|
||||
void FrameEnd();
|
||||
void Render(SDL_Surface* const);
|
||||
void RenderFrame(SDL_Renderer* renderer) override;
|
||||
|
||||
//Event handlers
|
||||
void MouseMotion(SDL_MouseMotionEvent const&);
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const&);
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const&);
|
||||
void KeyDown(SDL_KeyboardEvent const&);
|
||||
void KeyUp(SDL_KeyboardEvent const&);
|
||||
private:
|
||||
//frame phases
|
||||
void FrameStart() override;
|
||||
void Update() override;
|
||||
void FrameEnd() override;
|
||||
|
||||
//input events
|
||||
void MouseMotion(SDL_MouseMotionEvent const& event) override;
|
||||
void MouseButtonDown(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseButtonUp(SDL_MouseButtonEvent const& event) override;
|
||||
void MouseWheel(SDL_MouseWheelEvent const& event) override;
|
||||
void KeyDown(SDL_KeyboardEvent const& event) override;
|
||||
void KeyUp(SDL_KeyboardEvent const& event) override;
|
||||
|
||||
//members
|
||||
Image image;
|
||||
RasterFont font;
|
||||
Button backButton;
|
||||
};
|
||||
|
||||
@@ -40,12 +40,14 @@ SplashScreen::~SplashScreen() {
|
||||
//Frame loop
|
||||
//-------------------------
|
||||
|
||||
void SplashScreen::Update() {
|
||||
void SplashScreen::FrameStart() {
|
||||
if (std::chrono::steady_clock::now() - startTick > std::chrono::duration<int>(1)) {
|
||||
SetNextScene(SceneList::MAINMENU);
|
||||
SetSceneSignal(SceneSignal::MAINMENU);
|
||||
}
|
||||
}
|
||||
|
||||
void SplashScreen::Render(SDL_Surface* const screen) {
|
||||
logo.DrawTo(screen, (screen->w - logo.GetClipW()) / 2, (screen->h - logo.GetClipH()) / 2);
|
||||
void SplashScreen::RenderFrame(SDL_Renderer* renderer) {
|
||||
int w = 0, h = 0;
|
||||
SDL_GetLogicalSize(renderer, &w, &h);
|
||||
logo.DrawTo(renderer, (w - logo.GetClipW()) / 2, (h - logo.GetClipH()) / 2);
|
||||
}
|
||||
|
||||
@@ -33,10 +33,11 @@ public:
|
||||
SplashScreen();
|
||||
~SplashScreen();
|
||||
|
||||
protected:
|
||||
void RenderFrame(SDL_Renderer* renderer) override;
|
||||
|
||||
private:
|
||||
//Frame loop
|
||||
void Update();
|
||||
void Render(SDL_Surface* const);
|
||||
void FrameStart() override;
|
||||
|
||||
//members
|
||||
std::chrono::steady_clock::time_point startTick;
|
||||
|
||||
Reference in New Issue
Block a user