diff -r 8d04e85ca204 -r 5143861c83bd project_files/frontlib/frontlib.c --- a/project_files/frontlib/frontlib.c Mon Jun 11 00:06:22 2012 +0200 +++ b/project_files/frontlib/frontlib.c Tue Jun 12 11:25:05 2012 +0200 @@ -1,21 +1,14 @@ #include "frontlib.h" #include "util/logging.h" -#include "model/map.h" -#include "ipc/mapconn.h" -#include "ipc/gameconn.h" - #include #include -#include -#include -#include -#include static int flib_initflags; int flib_init(int flags) { flib_initflags = flags; + flib_log_d("Initializing frontlib"); if(!(flib_initflags | FRONTLIB_SDL_ALREADY_INITIALIZED)) { if(SDL_Init(0)==-1) { flib_log_e("Error in SDL_Init: %s", SDL_GetError()); @@ -35,81 +28,9 @@ } void flib_quit() { + flib_log_d("Shutting down frontlib"); SDLNet_Quit(); if(!(flib_initflags | FRONTLIB_SDL_ALREADY_INITIALIZED)) { SDL_Quit(); } } - -static void onDisconnect(void *context, int reason) { - flib_log_i("Connection closed. Reason: %i", reason); - flib_gameconn **connptr = context; - flib_gameconn_destroy(*connptr); - *connptr = NULL; -} - -static void onGameRecorded(void *context, const uint8_t *record, int size, bool isSavegame) { - flib_log_i("Writing %s (%i bytes)...", isSavegame ? "savegame" : "demo", size); - FILE *file = fopen(isSavegame ? "testsave.42.hws" : "testdemo.42.hwd", "wb"); - fwrite(record, 1, size, file); - fclose(file); -} - -int main(int argc, char *argv[]) { - flib_init(0); - - flib_cfg_meta *metaconf = flib_cfg_meta_from_ini("basicsettings.ini", "gamemods.ini"); - assert(metaconf); - flib_gamesetup setup; - setup.gamescheme = flib_cfg_from_ini(metaconf, "scheme_shoppa.ini"); - setup.map = flib_map_create_maze("Jungle", MAZE_SIZE_MEDIUM_TUNNELS); - setup.seed = "apsfooasdgnds"; - setup.script = NULL; - setup.teamcount = 2; - setup.teams = calloc(2, sizeof(flib_team)); - setup.teams[0].color = 0xffff0000; - setup.teams[0].flag = "australia"; - setup.teams[0].fort = "Plane"; - setup.teams[0].grave = "Bone"; - setup.teams[0].hogsInGame = 2; - setup.teams[0].name = "Team Awesome"; - setup.teams[0].voicepack = "British"; - setup.teams[0].weaponset = flib_weaponset_create("Defaultweaps"); - setup.teams[0].hogs[0].difficulty = 2; - setup.teams[0].hogs[0].hat = "NoHat"; - setup.teams[0].hogs[0].initialHealth = 100; - setup.teams[0].hogs[0].name = "Harry 120"; - setup.teams[0].hogs[1].difficulty = 2; - setup.teams[0].hogs[1].hat = "chef"; - setup.teams[0].hogs[1].initialHealth = 100; - setup.teams[0].hogs[1].name = "Chefkoch"; - setup.teams[1].color = 0xff0000ff; - setup.teams[1].flag = "germany"; - setup.teams[1].fort = "Cake"; - setup.teams[1].grave = "Cherry"; - setup.teams[1].hogsInGame = 2; - setup.teams[1].name = "The Krauts"; - setup.teams[1].voicepack = "Pirate"; - setup.teams[1].weaponset = flib_weaponset_create("Defaultweaps"); - setup.teams[1].hogs[0].difficulty = 0; - setup.teams[1].hogs[0].hat = "quotecap"; - setup.teams[1].hogs[0].initialHealth = 100; - setup.teams[1].hogs[0].name = "Quote"; - setup.teams[1].hogs[1].difficulty = 0; - setup.teams[1].hogs[1].hat = "chef"; - setup.teams[1].hogs[1].initialHealth = 100; - setup.teams[1].hogs[1].name = "Chefkoch2"; - - flib_gameconn *gameconn = flib_gameconn_create("Medo42", metaconf, &setup, false); - assert(gameconn); - - flib_gameconn_onDisconnect(gameconn, &onDisconnect, &gameconn); - flib_gameconn_onGameRecorded(gameconn, &onGameRecorded, &gameconn); - - while(gameconn) { - flib_gameconn_tick(gameconn); - } - flib_log_i("Shutting down..."); - flib_quit(); - return 0; -}