diff options
| author | Petr Mrázek | 2011-08-07 04:28:51 +0000 |
|---|---|---|
| committer | Petr Mrázek | 2011-08-07 04:28:51 +0000 |
| commit | 9c99824a023a959bb9ff908b2f434e02b8289351 (patch) | |
| tree | 609ee50e778bae6b2eb10f68bf36e8b96752f3e5 /GUI.cpp | |
| parent | 4064cf25797462fc6ac61f578b7e4b6bd31bf6b6 (diff) | |
| download | stonesense-9c99824a023a959bb9ff908b2f434e02b8289351.tar.gz stonesense-9c99824a023a959bb9ff908b2f434e02b8289351.tar.bz2 stonesense-9c99824a023a959bb9ff908b2f434e02b8289351.tar.xz | |
Make stonesense use DF/stonesense for all resources.
Diffstat (limited to 'GUI.cpp')
| -rw-r--r-- | GUI.cpp | 90 |
1 files changed, 57 insertions, 33 deletions
@@ -810,39 +810,63 @@ void paintboard(){ -void loadGraphicsFromDisk(){
- /*al_clear_to_color(al_map_rgb(0,0,0));
- draw_textf_border(font,
- al_get_bitmap_width(al_get_target_bitmap())/2,
- al_get_bitmap_height(al_get_target_bitmap())/2,
- ALLEGRO_ALIGN_CENTRE, "Loading...");
- al_flip_display();*/
- int index;
- index = loadImgFile("objects.png");
- if(index == -1) return;
- IMGObjectSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- index = loadImgFile("creatures.png");
- if(index == -1) return;
- IMGCreatureSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- index = loadImgFile("ramps.png");
- if(index == -1) return;
- IMGRampSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- index = loadImgFile("SSStatusIcons.png");
- if(index == -1) return;
- IMGStatusSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- index = loadImgFile("gibs.png");
- if(index == -1) return;
- IMGBloodSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- index = loadImgFile("engravings_floor.png");
- if(index == -1) return;
- IMGEngFloorSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- index = loadImgFile("engravings_left.png");
- if(index == -1) return;
- IMGEngLeftSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- index = loadImgFile("engravings_right.png");
- if(index == -1) return;
- IMGEngRightSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
- createEffectSprites();
+void loadGraphicsFromDisk()
+{
+ auto globulate = [](const char * filename, ALLEGRO_BITMAP *& imgd ) -> bool
+ {
+ int index;
+ ALLEGRO_PATH * p = al_create_path_for_directory("stonesense");
+ al_set_path_filename(p,filename);
+ index = loadImgFile(al_path_cstr(p,ALLEGRO_NATIVE_PATH_SEP));
+ if(index == -1)
+ {
+ al_destroy_path(p);
+ return false;
+ }
+ imgd = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+ al_destroy_path(p);
+ return true;
+ };
+ if(!globulate("objects.png", IMGObjectSheet)) return;
+ if(!globulate("creatures.png", IMGObjectSheet)) return;
+ if(!globulate("ramps.png", IMGObjectSheet)) return;
+ if(!globulate("SSStatusIcons.png", IMGObjectSheet)) return;
+ if(!globulate("gibs.png", IMGObjectSheet)) return;
+ if(!globulate("engravings_floor.png", IMGObjectSheet)) return;
+ if(!globulate("engravings_left.png", IMGObjectSheet)) return;
+ if(!globulate("engravings_right.png", IMGObjectSheet)) return;
+/*
+ al_set_path_filename(p,"creatures.png");
+ index = loadImgFile(al_path_cstr(p,ALLEGRO_NATIVE_PATH_SEP));
+ if(index == -1) return;
+ IMGCreatureSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+
+ al_set_path_filename(p,"ramps.png");
+ index = loadImgFile(al_path_cstr(p,ALLEGRO_NATIVE_PATH_SEP));
+ if(index == -1) return;
+ IMGRampSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+
+ index = loadImgFile("SSStatusIcons.png");
+ if(index == -1) return;
+ IMGStatusSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+
+ index = loadImgFile("gibs.png");
+ if(index == -1) return;
+ IMGBloodSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+
+ index = loadImgFile("engravings_floor.png");
+ if(index == -1) return;
+ IMGEngFloorSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+
+ index = loadImgFile("engravings_left.png");
+ if(index == -1) return;
+ IMGEngLeftSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+
+ index = loadImgFile("engravings_right.png");
+ if(index == -1) return;
+ IMGEngRightSheet = al_create_sub_bitmap(IMGFilelist[index], 0, 0, al_get_bitmap_width(IMGFilelist[index]), al_get_bitmap_height(IMGFilelist[index]));
+ */
+ createEffectSprites();
}
//delete and clean out the image files
|
