This repository has been archived on 2026-04-30. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Tortuga/server/server.cpp
T
2013-05-04 14:00:30 +10:00

60 lines
874 B
C++

#include "server.hpp"
#include "SDL/SDL.h"
#include "SDL_net/SDL_net.h"
#include <stdexcept>
#include <iostream>
using namespace std;
Server::Server() {
running = true;
config.Load("config.cfg");
}
Server::~Server() {
//
}
void Server::Init() {
if (SDLNet_Init()) {
throw(runtime_error("Failed to init SDL_net"));
}
}
void Server::Proc() {
while(running) {
HandleInput();
UpdateWorld();
HandleOutput();
//debug
running = false;
}
}
void Server::Quit() {
SDLNet_Quit();
}
void Server::HandleInput() {
//accept new connections
//...
//accept updates from the clients
//...
//read the updates from the clients into internal containers
//...
}
void Server::UpdateWorld() {
//update internals ie.
// ai
// loot drops
}
void Server::HandleOutput() {
//send all information to new connections
//selective updates to existing connectons
}