Ejemplo n.º 1
0
int Drill::deltaInternal() {
	int out = lambda();
	if(parts > 0) {
		parts -= 1;
		throwEvent(1);
		timeAdvance(parts, process_time);
	} else {
		throwEvent(1);
		timeAdvance(0, process_time);
	}
	return out;
}
Ejemplo n.º 2
0
void Drill::timeAdvance(int p, double s) {
	if(p > 0) {
		expire->addTime(s,0);
		throwEvent();
	} else {
		return;
	}
}
Ejemplo n.º 3
0
void Edit::onKeyDown(int keycode) {
	if (keycode >= 'A' && keycode <= 'Z') {
		text += (char)keycode;
	}

	if (keycode == KC_BACKSPACE && ! text.empty()) {
		text = text.substr(0, text.length() - 1);
	}

	if (keycode == KC_SPACE || keycode == KC_ENTER) {
		throwEvent();
	}
}
Ejemplo n.º 4
0
void GameCore::run() {
	log(LOG_DEBUG, "Entered run of Game Core");
	GameEvent frame_ev;
	frame_ev.data = NULL;
	frame_ev.eventtype = Frame_Event;
	while (true) {
		SDL_Event ev;
		while (SDL_PollEvent(&ev)) { //poll for SDL events
			switch (ev.type) { // check the event type
			case SDL_QUIT:
				die();
				break;
			default:
				ic.processEvent(ev);
			}
		}
		rc.doFrame();
		throwEvent(frame_ev);
		triggerEvents();
		//GL rendering here
		rc.render();
		SDL_GL_SwapWindow(window);
	}
}