static bool powerup_help_render(float t) { if(t != 0.0f) game_update_empty(); UIElement* element = uidesc_get("powerup_help"); UIElement* text_elem2 = uidesc_get_child(element, "text2"); UIElement* text_elem3 = uidesc_get_child(element, "text3"); UIElement* star = uidesc_get_child(element, "star"); UIElement* item = uidesc_get_child(element, "item"); UIElement* button_quit = uidesc_get_child(element, "button_quit"); float state_alpha = 1.0f-fabsf(t); byte a = lrintf(255.0f * state_alpha); Color col = COLOR_RGBA(255, 255, 255, a); spr_draw("blue_shade", hud_layer-1, rectf(0.0f, 0.0f, v_width, v_height), col); static float xpos = 0.0f; static float inc = 600.0f; xpos = hud_scroll(xpos, inc, item_count, t); for(uint i = 0; i < item_count; ++i) { Vector2 off = vec2(xpos + i * inc, 0.0f); float d = normalize(fabsf(off.x), 0.0f, inc * (item_count-1)); float scroll_alpha = 1.0f / exp(PI*d); byte a2 = lrintf(255.0f * scroll_alpha * state_alpha); Color col2 = COLOR_RGBA(255, 255, 255, a2); // Star spr_draw_cntr_h(star->spr, hud_layer, vec2_add(off, star->vec2), time_s()/10.0f, 1.0f, col2); // Item const char* item_img = powerup_params[i].unlocked_spr; spr_draw_cntr(item_img, hud_layer, vec2_add(off, item->vec2), 0.0f, 1.0f, col2); // Description text const char* text3 = powerup_params[i].description; vfont_select(FONT_NAME, 32.0f); Vector2 half_size3 = vec2_scale(vfont_size(text3), 0.5f); vfont_draw(text3, hud_layer+1, vec2_add(off, vec2_sub(text_elem3->vec2,half_size3)), col2); // Item name const char* text2 = powerup_params[i].name; vfont_select(FONT_NAME, 48.0f); Vector2 half_size2 = vec2_scale(vfont_size(text2), 0.5f); vfont_draw(text2, hud_layer+1, vec2_add(off, vec2_sub(text_elem2->vec2,half_size2)), col2); } // Quit button if(hud_button(button_quit, col, t)) { malka_states_pop(); } return true; }
static void game_over_preenter(void) { if(screen == WIN_SCREEN || screen == TUTORIAL_SCREEN) { mfx_trigger("win"); levels_unlock_next(); } else { mfx_trigger("fail"); } game_over_anim_start = time_s() + 0.6f; game_over_anim_end = time_s() + 0.9f; uint place = minimap_get_place_of_rabbit(player); coins_earned = 10 * (4-place); player->data->tokens += coins_earned; keyval_set_int("coins", coins + player->data->tokens); if(screen == TUTORIAL_SCREEN) levels_set_place(5); }
double BenchTimer::precision_s() { prec_s = 0.0; while (prec_s == 0.0) { start(); stop(); prec_s = time_s(); } return prec_s; }
static size_t ng_writer(void *buf, size_t each, size_t n, void *user) { uint64_t v[7]; if (sscanf(buf, "Active connections: %lu\n" "server accepts handled requests\n" " %lu %lu %lu\n" "Reading: %lu Writing: %lu Waiting: %lu\n", &v[0], &v[1], &v[2], &v[3], &v[4], &v[5], &v[6]) == 7) { int32_t ts = time_s(); printf("RATE %i %s:nginx:requests.accepted %lu\n", ts, PREFIX, v[1]); printf("RATE %i %s:nginx:requests.handled %lu\n", ts, PREFIX, v[2]); printf("RATE %i %s:nginx:requests.total %lu\n", ts, PREFIX, v[3]); printf("SAMPLE %i %s:nginx:connections.active %lu\n", ts, PREFIX, v[0]); printf("SAMPLE %i %s:nginx:connections.reading %lu\n", ts, PREFIX, v[4]); printf("SAMPLE %i %s:nginx:connections.writing %lu\n", ts, PREFIX, v[5]); printf("SAMPLE %i %s:nginx:connections.waiting %lu\n", ts, PREFIX, v[6]); } return n * each; }
bool MatchPool::Push(int elo, int size, oid_t id) { MatchEntity *ent = NULL; std::map<oid_t, MatchEntity*>::iterator itr = _entities.find(id); if (itr == _entities.end()) { ent = E_NEW MatchEntity; } else { ent = itr->second; if (ent == NULL) { ent = E_NEW MatchEntity; } else if (ent->status == MATCH_PENDING) { return false; } } ent->id = id; ent->elo = elo; ent->time = time_s(); ent->status = MATCH_PENDING; ent->size = size; push(ent); return true; }
static size_t apache_writer(void *buf, size_t each, size_t n, void *user) { uint64_t v[4]; double b; if (sscanf(buf, "Total Accesses: %lu\n" "Total kBytes: %lu\n" "Uptime: %*u\n" "ReqPerSec: %*f\n" "BytesPerSec: %*f\n" "BytesPerReq: %lf\n" "BusyWorkers: %lu\n" "IdleWorkers: %lu\n", &v[0], &v[1], &b, &v[2], &v[3]) == 5) { int32_t ts = time_s(); printf("RATE %i %s:apache:requests.total %lu\n", ts, PREFIX, v[0]); printf("RATE %i %s:apache:requests.bytes %lu\n", ts, PREFIX, v[1] * 1024); printf("SAMPLE %i %s:apache:request.size %lf\n", ts, PREFIX, b); printf("SAMPLE %i %s:apache:workers.busy %lu\n", ts, PREFIX, v[2]); printf("SAMPLE %i %s:apache:workers.idle %lu\n", ts, PREFIX, v[3]); } return n * each; }