void fillarea(int x, int y, int w, int h, int t){ for(int i=x; i<x+w; i++){ for(int j=y; j<y+h; j++){ areamap[i][j]=t; } } } void initworld(){ //Setup the default world, load in any residual info for(int i=0; i<20; i++){ for(int j=0; j<20; j++){ areamap[i][j]=0; } } //lab fillarea(1,0,6,2,2); fillarea(4,0,1,5,2); areamap[7][0]=2; areamap[1][17]=2; fillarea(2,4,2,1,2); fillarea(0,18,5,2,2); fillarea(2,16,6,2,2); fillarea(7,15,1,5,2); //tower fillarea(9,0,1,20,3); areamap[8][9]=3; fillarea(10,4,2,1,3); //warpzone areamap[13][0]=4; fillarea(14,0,6,3,4); fillarea(16,3,4,1,4); //space station areamap[16][6]=5; fillarea(10,5,6,3,5); fillarea(12,3,4,3,5); fillarea(13,7,6,5,5); fillarea(18,7,1,8,5); fillarea(11,11,6,3,5); fillarea(11,14,2,1,5); //If restarting, comment out from here string s = "areamapin.txt"; ifstream file; file.open(s.c_str()); if(!file){ }else{ for(int j=0; j<20; j++){ for(int i=0; i<20; i++){ file >> areamap[i][j]; } } } } void init(){ test=false; teststring="TEST = True"; state=0; gt=0; tileset=1; savednote=0; numentities=0; paraadjustdelay=0; currentarea="unset"; //currentarea="lab"; //currentarea="otherlevel"; //Setup Allegro allegro_init(); //Setup input install_keyboard(); install_mouse(); show_os_cursor(MOUSE_CURSOR_ARROW); //Setup timer install_timer(); LOCK_VARIABLE(speed_counter); LOCK_FUNCTION(increment_speed_counter); install_int_ex(increment_speed_counter, BPS_TO_TIMER(60)); //Setup graphics8 set_color_depth(16); set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0); register_png_file_type(); currentpage=0; fullscreen=false; worldmap=create_bitmap(800,600); buffer=load_png("../../engine/current/data/graphics/tiles.png", dummypal); for(int y=0;y<30;y++){ for(int x=0;x<40;x++){ tiles[x+(y*40)] = create_bitmap(8, 8); rectfill(tiles[x+(y*40)], 0, 0, 8, 8, makecol(16,16,16)); blit(buffer, tiles[x+(y*40)], x*8, y*8, 0, 0, 8,8); } } destroy_bitmap(buffer); buffer=load_png("../../engine/current/data/graphics/tiles2.png", dummypal); for(int y=0;y<30;y++){ for(int x=0;x<40;x++){ tiles2[x+(y*40)] = create_bitmap(8, 8); rectfill(tiles2[x+(y*40)], 0, 0, 8, 8, makecol(16,16,16)); blit(buffer, tiles2[x+(y*40)], x*8, y*8, 0, 0, 8,8); } } destroy_bitmap(buffer); buffer=create_bitmap(320,240); biggerbuffer=create_bitmap(640,480); page[0]=create_video_bitmap(640, 480); page[1]=create_video_bitmap(640, 480); page[2]=create_video_bitmap(640, 480); currentpage=0; //Setup sound set_volume_per_voice(0); if (install_sound(DIGI_AUTODETECT, MIDI_NONE, 0) < 0) { set_gfx_mode(GFX_TEXT, 0, 0, 0, 0); allegro_message("Error installing sound.\n"); } //Init map //Load last? //Blank mapx=100; mapy=100; initworld(); if(!loadmap(mapx, mapy)){ for(int j=0; j<30; j++){ for(int i=0; i<40; i++){ mapcontents[i][j]=0; } } } xp=0; yp=0; ctile=0; tileselectdelay=0; reversekey=0; }