misc/wrapper.c
author nemo
Thu, 01 Jul 2010 23:41:10 -0400
changeset 3608 c509bbc779e7
parent 3495 a6b4f351d400
child 3697 d5b30d6373fc
permissions -rw-r--r--
Revert prior attempted optimisation. Gridding the land pays in some situations, but not all. Restricting to an upper bound might help, but overall, seems too fuzzy to be worth it. On one side is increased cost of Add/Delete + extra test on collision check, on the other is skipping the list iteration. Perhaps for large lists.

/*
 This is an experimental main to use with hwLibary
 - create the library with `cmake . -DBUILD_ENGINE_LIBRARY=1' and `make hwengine'
 - compile this file with `gcc libhwLibrary.dylib libSDLmain.a wrapper.c -o wrapper -framework Cocoa -framework SDL'
   (in Mac OS X, but this command line shouldn't be much different in other OSes; make sure to set the correct files/paths)
 - this executable expect a save file "Save.hws" and the data folder "Data" to be in the same launching directory
 */

#import <stdio.h>
#import <stdlib.h>

extern void Game (const char **);

int SDL_main (int argc, const char **argv) {
    
    const char **gameArgs = (const char**) malloc(sizeof(char *) * 9);
    
    gameArgs[0] = "wrapper";    //UserNick
	gameArgs[1] = "0";          //ipcPort
	gameArgs[2] = "0";          //isSoundEnabled
	gameArgs[3] = "0";          //isMusicEnabled
	gameArgs[4] = "en.txt";     //cLocaleFName
	gameArgs[5] = "0";          //cAltDamage
	gameArgs[6] = "768";        //cScreenHeight
    gameArgs[7] = "1024";       //cScreenHeight
    gameArgs[8] = "Save.hws";   //recordFileName
    
    Game(gameArgs);
    free(gameArgs);
    
    return 0;
}