void game_init() { // background placeholder jet_type_init(&bg, "background", 0, 0); jet_type_set_grid_sheet(&bg, jet_texture_load_file("bgtest.tga"), 320, 240, 1); jet_type_set_sprite(&bg, 0); jet_spawn(&bg, jet_point_zero()); tiles = jet_texture_load_file("tiles.tga"); // background tiles jet_type_init(&bg_tiles, "background", 0, 0); jet_type_set_grid_sheet(&bg_tiles, tiles, 16, 16, 3); jet_type_set_sprite(&bg_tiles, 11); for(int off = 0; off < 2; ++off) for(int i = 1; i < 8; ++i) for(int j = 1; j < 13; ++j) jet_spawn(&bg_tiles, jet_point_xy(off*176 + i*16,j*16)); // player entity (/entities later) jet_type_init(&dudes, "player", 0, 0); jet_type_set_grid_sheet(&dudes, tiles, 16, 16, 3); jet_type_set_sprite(&dudes, 5); player = jet_spawn(&dudes, jet_point_xy(4*16,8*16)); // bombs! jet_type_init(&bombs, "bomb", sizeof(u8), 0); jet_type_set_grid_sheet(&bombs, tiles, 16, 16, 3); jet_type_set_sprite(&bombs, 2); jet_type_set_update(&bombs, bomb_update); // event handler event_handler_init(&mrbomber_handler, &mrbomber_event); event_handler_push(&mrbomber_handler); }
void start(int is_daemon) { config_init(); if(is_daemon) { daemonize(); } event_handler_init(); event_watcher_init(); event_watcher_start(); event_handler_start(); event_watcher_wait(); event_handler_wait(); }