Door::Door(int x, int y, string mdl){ position = new Point(); mdlviewer_init((char*)mdl.c_str(), model); model.SetSequence(0); position->x = x; position->y = y; position->z = 0; }
MainCharacter::MainCharacter(){ position = new Point(); mdlviewer_init("homer.mdl", homer); position->x = -250; position->y = -250; position->z = CHARACTER_HEIGHT * 0.5; dir = 0; vel = 0.7; health = 100; }
EnemyCharacter::EnemyCharacter(){ position = new Point(); mdlviewer_init("mummy.mdl", model); model.SetSequence(1); position->x = -113; position->y = 163; position->z = ENEMY_HEIGHT / 2; dir = 0; vel = 0.35; health = maxHealth; }
int main(int argc, char **argv) { glutInit(&argc, argv); glutInitWindowPosition(10, 10); glutInitWindowSize(800+GAP*3, 400+GAP*2); glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); if ((estado.mainWindow=glutCreateWindow("Labirinto")) == GL_FALSE) exit(1); imprime_ajuda(); // Registar callbacks do GLUT da janela principal init(); glutReshapeFunc(reshapeMainWindow); glutDisplayFunc(displayMainWindow); glutTimerFunc(estado.timer,Timer,0); glutKeyboardFunc(Key); glutKeyboardUpFunc(KeyUp); glutSpecialFunc(SpecialKey); glutSpecialUpFunc(SpecialKeyUp); // criar a sub window topSubwindow estado.topSubwindow=glutCreateSubWindow(estado.mainWindow, GAP, GAP, 400, 400); init(); setLight(); setMaterial(); createTextures(modelo.texID[JANELA_TOP]); createDisplayLists(JANELA_TOP); mdlviewer_init("gordon.mdl", gordon.stdModel[JANELA_TOP] ); for(int i=0;i<3;i++) mdlviewer_init("headcrab.mdl", headCrabs[i].stdModel[JANELA_TOP] ); glutReshapeFunc(redisplayTopSubwindow); glutDisplayFunc(displayTopSubwindow); glutTimerFunc(estado.timer,Timer,0); glutKeyboardFunc(Key); glutSpecialFunc(SpecialKey); glutSpecialUpFunc(SpecialKeyUp); // criar a sub window navigateSubwindow estado.navigateSubwindow=glutCreateSubWindow(estado.mainWindow, 400+GAP, GAP, 400, 800); init(); setLight(); setMaterial(); createTextures(modelo.texID[JANELA_NAVIGATE]); createDisplayLists(JANELA_NAVIGATE); mdlviewer_init("gordon.mdl", gordon.stdModel[JANELA_NAVIGATE] ); for(int i=0;i<3;i++) mdlviewer_init("headcrab.mdl", headCrabs[i].stdModel[JANELA_NAVIGATE] ); glutReshapeFunc(reshapeNavigateSubwindow); glutDisplayFunc(displayNavigateSubwindow); glutMouseFunc(mouseNavigateSubwindow); glutTimerFunc(estado.timer,Timer,0); glutKeyboardFunc(Key); glutSpecialFunc(SpecialKey); glutSpecialUpFunc(SpecialKeyUp); glutMainLoop(); return 0; }