void level_load_ext(STRING* _lvl) { if (_lvl != NULL) { if (panLoad == NULL) { on_level = on_level_event; on_level_load = on_level_loaded_event; panLoad = pan_create("", 100); vec_set(panLoad.blue, vector(8,8,8)); pan_setdigits(panLoad, 0, 10, 10, "Loading...", font_create("Arial#30b"), 1, vDummy2); pan_setcolor(panLoad, 1, 1, vector(255,255,255)); panLoadBar = pan_create("", 101); vec_set(panLoadBar.blue, vector(0,0,255)); } panLoad.size_x = screen_size.x; panLoad.size_y = screen_size.y; panLoadBar.size_x = 0; panLoadBar.size_y = 40; panLoadBar.pos_x = 0; panLoadBar.pos_y = screen_size.y - 100; set(panLoad, LIGHT | SHOW); set(panLoadBar, LIGHT | SHOW); wait(1); level_load(_lvl); } }
void gui_init() { panJetpackBorder = pan_create("", 2); panJetpackBorder.bmap = bmapJetpackColor; panJetpack = pan_create("", 3); panJetpack.bmap = bmapJetpackBorder; panHeart1 = pan_create("", 2); panHeart2 = pan_create("", 2); panHeart3 = pan_create("", 2); panHeart1.bmap = bmapZorroLife; panHeart2.bmap = bmapZorroLife; panHeart3.bmap = bmapZorroLife; txtLifes = txt_create(1, 2); set(txtLifes, OUTLINE); txtLifes.font = font_create("Arial#32b"); panA4Cube = pan_create("", 2); panA4Cube.bmap = bmapA4Cube; txtA4Cube = txt_create(1, 3); set(txtA4Cube, OUTLINE); txtA4Cube.font = font_create("Arial#32b"); txtGameOver = txt_create(1, 10); set(txtGameOver, OUTLINE | CENTER_X | CENTER_Y); txtGameOver.font = font_create("Arial#90b"); vec_set(txtGameOver.blue, vector(0,0,255)); str_cpy((txtGameOver.pstring)[0], "Game Over"); }
static void object_added(GDBusProxy *proxy, void *user_data) { const char *interface; interface = g_dbus_proxy_get_interface(proxy); if (strcmp(interface, "org.bluez.Adapter1") == 0) { DBG("%s %s", interface, g_dbus_proxy_get_path(proxy)); device_create(proxy); return; } if (strcmp(interface, "org.bluez.Network1") == 0) { DBG("%s %s", interface, g_dbus_proxy_get_path(proxy)); pan_create(proxy); return; } }
static void object_added(GDBusProxy *proxy, void *user_data) { const char *interface; interface = g_dbus_proxy_get_interface(proxy); if (!interface) { connman_warn("Interface or proxy missing when adding " "bluetooth object"); return; } if (strcmp(interface, "org.bluez.Adapter1") == 0) { DBG("%s %s", interface, g_dbus_proxy_get_path(proxy)); device_create(proxy); return; } if (strcmp(interface, "org.bluez.Network1") == 0) { DBG("%s %s", interface, g_dbus_proxy_get_path(proxy)); pan_create(proxy); return; } }
void game_hotkeys() { panMute = pan_create("", 200); panMute.bmap = bmapMute; while(1) { if (key_f9) { while(key_f9) wait(1); // Reposition because of possible resolution change panMute.pos_x = screen_size.x - bmap_width(bmapMute) - 10; panMute.pos_y = screen_size.y - bmap_height(bmapMute) - 10; if ((master_vol == -1) || (master_vol > 0)) { set(panMute, SHOW); master_vol = 0; } else { reset(panMute, SHOW); master_vol = 100; } } wait(1); } }
void fadeWithBlack(void *block) { PANEL *panel = pan_create(NULL, 100); panel.bmap = bmap_createblack(screen_size.x, screen_size.y, 24); set(panel, SHOW|TRANSLUCENT); while(panel.alpha < 100) { panel.alpha += time_step * 8.0; wait(1); } void (*blubb)(); blubb = block; blubb(); while(panel.alpha > 0) { panel.alpha -= time_step * 8.0; wait(1); } ptr_remove(panel); }
void game_start() { #ifndef SKIP_INTRO resetPpSwirl (); level_load("menu2.wmb"); wait(3); setHdr(LVL_INTRO_HDR_STRENGTH, LVL_INTRO_HDR_THRESHOLD, LVL_INTRO_HDR_EXPOSURE); camera->arc = 60; camera->ambient = 0; fog_color = 0; camera_path("path1"); PANEL* panBlack = pan_create(" ", 100); vec_set(panBlack.blue, vector(8,8,8)); pan_setdigits(panBlack, 0, 5, 5, "Press [Space] to skip", font_create("Arial#24b"), 1, vDummy); pan_setcolor(panBlack, 1, 1, vector(255,255,255)); set(panBlack, SHOW | LIGHT | OVERLAY); var vMediaHandle = snd_play(g_musicIntro, 100, 0); while (key_esc || key_space || key_enter) wait(1); while (snd_playing(vMediaHandle) && !key_esc && !key_space && !key_enter) wait(1); proc_kill((void*)camera_path); ptr_remove(panBlack); snd_stop(vMediaHandle); vMediaHandle = 0; #endif nPlayerLifes = 3; flying_man = 0; gui_start(); // standard start level = temple #ifndef SKIP_TO lvlTempleInit(); #else #ifdef SKIP_TO_LOTTIFANTLEVEL lvlLfInit(); #endif #ifdef SKIP_TO_BOSSLEVEL lvlBossInit(); #endif #ifdef SKIP_TO_LAVASTAGE lvlLavastageInit(); #endif #ifdef SKIP_TO_CREDITS creditsInit(); #endif #endif }